ホームページ >Java >&#&チュートリアル >Javaのリスト、設定、マップの違い

Javaのリスト、設定、マップの違い

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2025-02-07 11:47:12399ブラウズ

Difference between List, Set, and Map in Java

javaのjava.utilパッケージは、CollectionListを含むいくつかのサブインターフェイスとクラスに分岐するSetインターフェイスを提供します。この記事では、これら3つのコアデータ構造の区別を明確にしています。 Map

インターフェイスを理解 List

は、

のサブインターフェイスで、要素を挿入、更新、削除、および検索する方法を提供します。 重要なことに、Listは要素を重複させ、挿入順序を維持することです。ヌル要素も許可されています Collection List

インターフェイスの例:

List

output:
<code class="language-java">import java.util.*;
public class ListExample {
   public static void main (String args[]) {
      List<string> mylist = new ArrayList<>();
      mylist.add("James Bond");
      mylist.add("Superman");
      mylist.add("Spiderman");
      for(String superhero : mylist)
         System.out.println(superhero);
   }
}</string></code>

<code>James Bond
Superman
Spiderman</code>
インターフェイスを理解

別のSetサブインターフェイス、

は、

パッケージ内に存在します。 Setの特徴は、重複要素の拒否です。一意の値のみが保存されます。 挿入順序はCollection notjava.util保証されていません。Set

インターフェイスの例:

Set

output:
<code class="language-java">import java.util.*;
public class MySet {
   public static void main (String args[]) {
      Set<string> setmyalp = new HashSet<>();
      setmyalp.add("A");
      setmyalp.add("B");
      setmyalp.add("C");
      setmyalp.add("D");
      setmyalp.add("E");
      System.out.println(setmyalp);
   }
}</string></code>

<code>[A, B, C, D, E]  (Order may vary)</code>
インターフェイスを理解

Mapインターフェイスは、

にもありますが、データをキー価値のペアに保存します。 各キーは一意であり、関連する値を取得するために使用されます。 重複キーは許可されていません。 挿入順序は保証されていません。

Map java.util

インターフェイスの例:

Map

output:
<code class="language-java">import java.util.*;
public class MyMap {
   public static void main (String args[]) {
      Map<string string> mapvalue = new HashMap<>();
      mapvalue.put("Fruit", "Apple");
      mapvalue.put("Vegetable", "Potato");
      mapvalue.put("Nut", "Groundnut");
      for(Map.Entry<string string> me : mapvalue.entrySet()) {
         System.out.println(me.getKey() + " " + me.getValue());
      }
   }
}</string></string></code>

<code>Fruit Apple
Vegetable Potato
Nut Groundnut (Order may vary)</code>

、およびインターフェイスの重要な違いListSet

Feature List Set Map
Duplicates Allowed Not Allowed Not Allowed (for keys)
Insertion Order Maintained Not Guaranteed Not Guaranteed
Null Values Multiple allowed Only one allowed One null key allowed, multiple null values
Implementing Classes ArrayList, LinkedList, etc. HashSet, LinkedHashSet, TreeSet, etc. HashMap, LinkedHashMap, TreeMap, etc.
Element Access By index using get() method No direct index access By key using get() method
Use Case Ordered collections, sequences Unique elements, membership testing Key-value associations, lookups
Iteration ListIterator Iterator keySet(), values(), entrySet()

結論

ListSet、およびMapは、データの収集を管理するための明確な方法を提供する基本的なJavaインターフェイスです。 選択は、順序付けられた要素の必要性、重複手当、および必要なデータアクセスの性質などの要因を考慮して、アプリケーションの特定のニーズに完全に依存しています。

よくある質問(FAQ)

  1. パッケージ:ListSetパッケージに属します。Map java.util

  2. null値:

    複数のnullを許可します。 は1つだけを許可します。 List1つのnullキーと複数のnull値を許可します Set Map

  3. 実装:

    およびListは一般的な実装です ArrayList LinkedList

    重複した値:
  4. のみ
  5. のみの値を許可します。

    List

  6. メソッド:
  7. のみ

    および(キー経由の値の場合)は、インデックスまたはキーによる直接的な要素アクセスを提供します。 get()

以上がJavaのリスト、設定、マップの違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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