Eclipseコレクション(以前のGSコレクション)を使用している場合は、またはを使用できFastList.newListWith(...)
ますFastList.wrapCopy(...)
。
どちらのメソッドもvarargsを使用するため、配列をインラインで作成するか、既存の配列を渡すことができます。
MutableList<Integer> list1 = FastList.newListWith(1, 2, 3, 4);
Integer[] array2 = {1, 2, 3, 4};
MutableList<Integer> list2 = FastList.newListWith(array2);
2つの方法の違いは、配列がコピーされるかどうかです。newListWith()
配列をコピーしないため、一定の時間がかかります。アレイが他の場所で変更される可能性があることがわかっている場合は、使用を避ける必要があります。
Integer[] array2 = {1, 2, 3, 4};
MutableList<Integer> list2 = FastList.newListWith(array2);
array2[1] = 5;
Assert.assertEquals(FastList.newListWith(1, 5, 3, 4), list2);
Integer[] array3 = {1, 2, 3, 4};
MutableList<Integer> list3 = FastList.wrapCopy(array3);
array3[1] = 5;
Assert.assertEquals(FastList.newListWith(1, 2, 3, 4), list3);
注:私はEclipseコレクションのコミッターです。