ArrayListの宣言と初期値の代入を1行で書く方法【Java完全初心者向け】

こんにちは。ゆうせいです。

Javaでよく使われるArrayList(アレイリスト)ですが、
宣言して、初期値を入れるのを1行でやりたい!」ということ、ありますよね。

今回はその方法を、誰でもわかるように丁寧に解説します。


ArrayListとは?

最初に少しだけ確認です。

ArrayListはJavaの可変長配列です。
ふつうの配列(int[]など)と違って、あとから要素を追加・削除できます。

イメージとしては、「中身が自由に増えたり減ったりする箱」です。


1行で宣言と値の代入をする方法

結論からいきます!

List<String> list = new ArrayList<>(Arrays.asList("りんご", "バナナ", "みかん"));

はい、これで宣言+初期値の代入が1行でできました。


解説します!

List<String> list

これは変数listを作って、文字列型のリストにします。
ArrayListを使うときは、通常Listというインターフェースで受け取るのが一般的です。

new ArrayList<>(...)

これは新しいArrayListの作成です。
<>の中に渡したものが、最初に入る要素になります。

Arrays.asList(...)

ここがミソです!

Arrays.asList("りんご", "バナナ", "みかん")というのは、
固定サイズのリストを生成するメソッド。

でもこれだけだと、追加や削除ができません。

そのために、new ArrayList<>(...)で包むことで
追加・削除ができる普通のArrayListに変換しているのです。


注意点:Arrays.asListだけではだめ?

はい。次のように書くと…

List<String> list = Arrays.asList("りんご", "バナナ", "みかん");
list.add("ぶどう"); // エラー!

Arrays.asList()のリストはサイズ変更不可なので、add()remove()が使えません。

なので、可変にしたいなら必ず new ArrayList<>(...) にしましょう。


補足:Java 9以降ならもっと簡単!

もしJava 9以上を使っているなら、List.of()も使えます。

List<String> list = new ArrayList<>(List.of("りんご", "バナナ", "みかん"));

List.of()固定リストですが、構文がちょっと簡潔です。


まとめ表

書き方例説明サイズ変更
Arrays.asList(...)固定サイズリスト
new ArrayList<>(Arrays.asList(...))可変サイズリスト
new ArrayList<>(List.of(...))Java9以降の簡潔な書き方

では練習問題!

このコードで初期値「犬」「猫」「鳥」を1行で入れてください。

List<String> animals = // ←ここを完成させてみよう!


今後の学習指針

  • ArrayListの基本操作(追加、削除、取得)
  • for文やfor-eachとの組み合わせ
  • Mapなど他のコレクションとの違い
  • Javaのバージョンごとの違いにも注目してみましょう!

セイ・コンサルティング・グループの新人エンジニア研修のメニューへのリンク

投稿者プロフィール

山崎講師
山崎講師代表取締役
セイ・コンサルティング・グループ株式会社代表取締役。
岐阜県出身。
2000年創業、2004年会社設立。
IT企業向け人材育成研修歴業界歴20年以上。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!
この記事に間違い等ありましたらぜひお知らせください。