ホームページ > Java > &#&チュートリアル > Java の List と ArrayList: いつどちらを使用するべきですか?

Java の List と ArrayList: いつどちらを使用するべきですか?

Mary-Kate Olsen
リリース: 2024-12-19 19:37:11
オリジナル
429 人が閲覧しました

List vs. ArrayList in Java: When Should You Use Which?

Java の Type List と Type ArrayList: 違いを理解する

Java では、List と ArrayList の両方がオブジェクトのコレクションの作成に広く使用されています。ただし、この 2 つには微妙ですが重要な違いがあります。

質問を理解する

提起された質問は、(1) と (2) が交換可能かどうかを尋ねます。

(1) List<?> myList = new ArrayList<?>();
(2) ArrayList<?> myList = new ArrayList<?>();
ログイン後にコピー

答えは、一般に (2) よりも (1) の方が好まれるということです。

質問

(1)が好ましい理由は、インターフェイスへのコーディングとカプセル化の原則によるものです。 List はインターフェイスですが、ArrayList はそのインターフェイスの特定の実装です。

myList を List として宣言することで、List インターフェイスの任意の実装 (LinkedList、Vector など) をそれに割り当てることができます。この柔軟性により、実行時にアプリケーションに最も適切な実装を選択できます。

対照的に、myList を ArrayList として宣言すると、それを ArrayList 実装に具体的にバインドすることになります。これにより、後で実装を変更する能力が制限されます。

使用例

次の例を考えてみましょう。

List<Integer> myList = new LinkedList<Integer>();
ログイン後にコピー

最初は、リストインターフェイス。ただし、ArrayList などのより効率的な実装が適しているパフォーマンスのボトルネックが発生したとします。

この場合、コードベースの他の部分に影響を与えることなく、LinkedList を ArrayList に簡単に交換できます。 ArrayList を使用していた場合は、 List の代わりに、コードが特に ArrayList.

に結び付けられるため、この変更には追加のリファクタリングが必要になります。

以上がJava の List と ArrayList: いつどちらを使用するべきですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート