ホームページ >Java >&#&チュートリアル >Java で ArrayList を初期化する最も効率的な方法は何ですか?

Java で ArrayList を初期化する最も効率的な方法は何ですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-27 19:43:14814ブラウズ

What's the Most Efficient Way to Initialize an ArrayList in Java?

単一行での ArrayList の初期化: さまざまなアプローチの探索

特定の要素で ArrayList を初期化する場合、開発者は多くの場合、最も効率的で簡潔な方法を選択するというジレンマに直面します。 。広く使用されているアプローチの 1 つは、 new キーワードを使用し、空の ArrayList を作成し、続いて add メソッドを使用して要素を追加することです。

ただし、より簡潔な解決策は、Arrays クラスの asList メソッドを利用することです。値の配列を asList に渡すことによって、不変のリストを作成できます。このリストを ArrayList コンストラクターでラップすると、要素の追加と削除をサポートする可変リストに変換されます。

たとえば、次のコードを考えてみましょう。

ArrayList<String> places = new ArrayList<String>(
    Arrays.asList("Buenos Aires", "Córdoba", "La Plata"));

このアプローチは、両方の利点を組み合わせたものです。 new キーワードと asList メソッドを使用すると、1 行のコードで ArrayList を初期化できます。

しかし、もっと簡単なオプションはあるでしょうか?要件が明示的に ArrayList ではない場合は、代わりに List インターフェイスを利用できます。 Arrays.asList メソッドは、ArrayList でラップしなくても、不変のリストを作成できます。

List<String> places = Arrays.asList("Buenos Aires", "Córdoba", "La Plata");

要素が 1 つだけ存在するシナリオでは、Collections.singletonList メソッドがより適切な代替手段として機能します。

List<String> places = Collections.singletonList("Buenos Aires");

singletList メソッドを使用すると不変性が保証されます。つまり、結果のリストを変更しようとすると、 例外。可変リストの場合は、不変リストを ArrayList でラップすることを検討してください。

ArrayList<String> places = new ArrayList<>(Arrays.asList("Buenos Aires", "Córdoba", "La Plata"));

この方法では、必ず java.util.Arrays パッケージをインポートしてください。

以上がJava で ArrayList を初期化する最も効率的な方法は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。