以下のコードを使用します。私のアプリケーションでは両方とも正常に機能しています。
事例1.
List<String> coreModules =
new ArrayList<String>(Arrays.asList(
"TOOLBAR_TO_DO_LIST",
"TOOLBAR_PROPERTY",
"TOOLBAR_PEOPLE",
"TOOLBAR_INSURANCE",
"TOOLBAR_BATCH",
"TOOLBAR_INFORMATION_REFERENCE",
"TOOLBAR_LR_PROPERTY",
"TOOLBAR_CASE_FOLDER",
"TOOLBAR_INSPECTION_RESULT",
"TOOLBAR_MY_OFFICE"));
事例2。
List<String> coreModules =
Arrays.asList(
"TOOLBAR_TO_DO_LIST",
"TOOLBAR_PROPERTY",
"TOOLBAR_PEOPLE",
"TOOLBAR_INSURANCE",
"TOOLBAR_BATCH",
"TOOLBAR_INFORMATION_REFERENCE",
"TOOLBAR_LR_PROPERTY",
"TOOLBAR_CASE_FOLDER",
"TOOLBAR_INSPECTION_RESULT",
"TOOLBAR_MY_OFFICE");
しかし、いくつか質問があります。
ケース2はパフォーマンス面では優れていますが、不変サイズのリストを返します。つまり、要素を要素に追加したり、要素から要素を削除することはできません。
指定された配列に連動するfixed-sizeリストを返します。 (返されたリストへの変更は、配列への「書き込み」)。
ケース2はnew String[10]
を作成するようなものだと思います。サイズは変更できませんが、要素は変更できます。ケース1では、両方を行うことができます。
これは、ケース2でできることを示しています。 http://grepcode.com/file/repository.grepcode.com/Java/root/jdk/openjdk/8u40-b25/Java/util/Arrays.Java# Arrays.ArrayList