LoginSignup
80
77

More than 5 years have passed since last update.

リストの初期値は<T> List<T> java.util.Arrays.asList(T… a) で設定できる。

Posted at

標準ライブラリですし、むしろ「なんで今までしらなかったの?」といわれてしまいそうな感すらありますが。

よく、配列の解説の際に、要素を列挙して配列を作る例があると思います。

配列の初期化
int[] a = { 1, 2, 3};

Javaのjava.util.ArrayListあたりで同じ事をやろうとおもうと、

愚直なリストの初期化
List<Integer> a = new ArrayList<Integer>();
a.add(1);
a.add(2);
a.add(3);

などとする必要がありますが、タイプ数も多いですし行数も無駄に増えて美しくないです。
要素が増えたり減ったりしたときの修正も面倒ですね。

そこで、表題のjava.util.Arrays.asList(T… a)です。

java.util.Arrays.asListをつかってスマートにリストの初期化
List<Integer> a = java.util.Arrays.asList(1,2,3);

と、配列ライクに初期化ができるのでした。

static_importするともっとすっきりします。
import static java.util.Arrays.asList;

List<Integer> a  = asList(1,2,3);

基本中の基本のような標準ライブラリのメソッドなのですが、投稿しておきます。

テストケースなどを書くときには特に重宝しそうです。

80
77
7

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
80
77