ホームページ  >  記事  >  Java  >  割り当てられた領域にすぐにアクセスできない場合、ArrayList サイズの初期化が重要になるのはなぜですか?

割り当てられた領域にすぐにアクセスできない場合、ArrayList サイズの初期化が重要になるのはなぜですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-02 12:12:03928ブラウズ

Why Does Initializing ArrayList Size Matter If You Can't Access the Allocated Space Immediately?

ArrayList サイズの初期化の目的を理解する

Java ArrayList クラスは、作成時に初期サイズを指定できる柔軟性を提供します。ただし、割り当てられたスペースにすぐにアクセスできない場合、なぜこれが必要なのか混乱することがよくあります。この質問では、この問題を明確にするために、ArrayList のサイズと容量の区別を詳しく調べます。

初期サイズと容量

新しい ArrayList で ArrayList を初期化するとき

>(10) では、サイズを定義するのではなく、容量を定義します。容量とは、基礎となるデータ構造を再割り当てすることなく ArrayList が保持できる要素の数を指します。初期容量を設定すると、要素を追加するときに不必要な再割り当てが回避され、パフォーマンスが最適化されます。

要素の追加

想定に反して、add(intindex, Object element) ) 実際に、指定されたインデックスに要素を追加します。ただし、これには、リストに新しい要素を収容するのに十分な容量が必要です。 arr.add(5, 10) を試行すると、ArrayList にまだ要素がないため、範囲外の例外が発生し、その結果、容量が空になります。

例: 初期化と埋め込みArrayList

<code class="java">ArrayList<Integer> arr = new ArrayList<>(10);
for (int i = 0; i < 10; i++) {
  arr.add(0);
}</code>

ArrayList を容量 10 で初期化し、要素を追加するには、ループを使用できます。

これで、インデックスの要素を変更または取得できます。 0 ~ 9、定義した初期容量を利用します。要約すると、ArrayList の初期容量を設定すると、リストの増大に伴う再割り当てオーバーヘッドが回避され、パフォーマンスが最適化されます。 ArrayList の初期サイズはゼロですが、この容量により、後続の要素を効率的に収容するのに十分なスペースが確保されます。

以上が割り当てられた領域にすぐにアクセスできない場合、ArrayList サイズの初期化が重要になるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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