ホームページ  >  記事  >  Java  >  Java LinkedHashMap

Java LinkedHashMap

WBOY
WBOYオリジナル
2024-08-30 15:47:58449ブラウズ

Java では、LinkedHashMap は Map インターフェイスからのリンクリストの実装です。これは HashMap に似ていますが、挿入される要素の順序を維持する追加機能が含まれています。 HashMap は迅速な挿入、削除、検索を提供しますが、要素の挿入順序は維持されません。

無料ソフトウェア開発コースを始めましょう

Web 開発、プログラミング言語、ソフトウェア テスト、その他

Java LinkedHashMap の機能

それに加えて、他のいくつかの機能も LinkedHashMap に含まれています。

  • ユニークな要素のみで構成されています。
  • 単一の null キーと複数の null 値を含めることができます。
  • 挿入順序は維持されます。
  • HashMap クラスを拡張します。
  • 存在する値はキーに基づいています。
  • 同期されていません。
  • 16 は初期のデフォルト容量です
  • 負荷率は0.75です。

構文:

LinkedHashMap<Integer, String> obj = new LinkedHashMap<Integer, String>();

ここで、obj は作成された LinkedHashMap のオブジェクトです。

LinkedHashMap オブジェクトが作成されると、以下に示すように、マップに要素を追加するために使用されます。

obj.put(11, "Victor");
obj.put(33, "Shyla");
obj.put(14, "Nancy");
obj.put(100, "Kuffi");
obj.put(23, "Princy");
obj.put(37, "Chamm");

コンストラクター

LinkedHashMap のコンストラクターを以下に示します。

1. LinkedHashMap(): 空の LinkedHashMap インスタンスが、挿入に基づく順序付け、負荷係数 0.75、デフォルトの初期容量 16 で作成されます。

2. LinkedHashMap(int initialCapacity): 空の LinkedHashMap インスタンスが、挿入、負荷係数 0.75、指定された初期容量に基づく順序で作成されます。

3. LinkedHashMap(intInitialCapacity, floatloadFactor): 空の LinkedHashMap インスタンスが、挿入、指定された負荷係数、および初期容量に基づいた順序で作成されます。

4. LinkedHashMap(int initialCapacity, float loadFactor, boolean accessOrder): 指定された負荷率、アクセス順序、初期容量を使用して空の LinkedHashMap インスタンスが作成されます。

5. LinkedHashMap(Map m): LinkedHashMap インスタンスは、挿入に基づく順序付けと、前述のマップに基づくマッピングで作成されます。

メソッド

LinkedHashMap で一般的に使用されるメソッドは次のとおりです。

1. clear(): マップからすべてのマッピングが削除されます。

2. boolean containsKey(Object key): マップに指定された値の 1 つまたは複数のキーへのマッピングが含まれている場合、true が返されます。

3. boolean containsValue(Object key): マップに少なくとも 1 つのキーへのマッピングが含まれている場合、true が返されます。

4. Object get(Object key): 指定されたキーのマッピングの値が返されます。

5. isEmpty(): キーと値のペアのマッピングがない場合は、true が返されます。

6. size(): マップ内で使用可能なキーと値のペアの数が返されます。

7.オブジェクトの削除(オブジェクト キー): 指定されたキーのマッピングの値が削除されます。

8. boolean RemoveEldestEntry(Map.Entry最長老): 最古のエントリを削除できる場合は、trueが返されます。

Java LinkedHashMap の例

以下は Java LinkedHashMap の例です:

例 #1

単純な LinkedHashMap を作成する Java プログラム。

コード:

import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Set;
//class begins here
public class LinkedHashMapExample {
//main method
public static void main(String args[]) {
// create a LinkedHashMap
LinkedHashMap<Integer, String> obj = new LinkedHashMap<Integer, String>();
//Adding key-value pair 1
obj.put(11, "Anna");
//Adding key-value pair 2
obj.put(33, "Adam");
//Adding key-value pair 3
obj.put(14, "Iza");
//Adding key-value pair 4
obj.put(23, "Norah");
//Adding key-value pair 5
obj.put(100, "Denan");
// create an entry set
Set s = obj.entrySet();
// Display the elements
Iterator itr = s.iterator();
//iterate each element
while(itr.hasNext()) {
//create an object for map.entry
Map.Entry mp = (Map.Entry)itr.next();
//print each element
System.out.print("Key in the LinkedHashMap is : "+ mp.getKey() +
" and it's corresponding value is: "+mp.getValue()+" \n");
}
}
}

出力:

Java LinkedHashMap

このプログラムでは、最初に LinkedHashMap が作成されます。その後、キーと値のペアを使用して要素が追加されます。完了すると、エントリ セットが作成されます。さらに、LinkedHashMap 内のすべての要素を出力するために、イテレーターが作成されます。各要素を反復することにより、サンプル出力に示すように印刷および表示されます。

例 #2

マップからキーと値のペアを削除する Java プログラム。

コード:

import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Set;
//class begins here
public class LinkedHashMapExample {
//main method
public static void main(String args[]) {
// create a LinkedHashMap
LinkedHashMap<Integer, String> obj = new LinkedHashMap<Integer, String>();
//Adding key-value pair 1
obj.put(11, "Victor");
//Adding key-value pair 2
obj.put(33, "Shyla");
//Adding key-value pair 3
obj.put(14, "Nancy");
//Adding key-value pair 4
obj.put(100, "Kuffi");
//Adding key-value pair 5
obj.put(23, "Princy");
//Adding key-value pair 6
obj.put(37, "Chamm");
System.out.print("Before removal, LinkedHashMap is: "+obj+"\n");
//remove the elements with keys 100 and 37
obj.remove(100);
obj.remove(37);
System.out.print("After removal, LinkedHashMap is: "+obj);
}
}

出力:

Java LinkedHashMap

このプログラムでも、まず LinkedHashMap が作成されます。その後、キーと値のペアを使用して要素が追加されます。完了すると、LinkedHashMap が印刷されます。次に、remove() メソッドを使用して、2 つのキーと値のペアがマップから削除されます。その後、もう一度マップが印刷され、サンプル出力に示すように表示されます。

例 #3

アクセス順序に基づいてマップ内のキーと値のペアを出力する Java プログラム。

コード:

import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Set;
//class begins here
public class LinkedHashMapExample {
//main method
public static void main(String args[]) {
// create a LinkedHashMap with third paramter set access order
LinkedHashMap<Integer, String> obj = new LinkedHashMap<Integer, String>(2, .75f, true);
//Adding key-value pair 1
obj.put(11, "Victor");
//Adding key-value pair 2
obj.put(33, "Shyla");
//Adding key-value pair 3
obj.put(14, "Nancy");
//Adding key-value pair 4
obj.put(100, "Kuffi");
//Adding key-value pair 5
obj.put(23, "Princy");
//Adding key-value pair 6
obj.put(37, "Chamm");
//Access the pair 33
obj.get(33);
//Access the pair 11
obj.get(11);
System.out.print("LinkedHashMap with access order is: "+obj);
}
}

出力:

Java LinkedHashMap

ここで、このプログラムでも、まずLinkedHashMapが作成されます。その後、キーと値のペアを使用して要素が追加されます。完了すると、キー 33 と 11 を持つ要素にアクセスします。次に、サンプル出力に示すようにマップが印刷および表示されます。アクセスされる要素がマップの最後にあることがわかります。

結論

この記事では、構文、コンストラクター、メソッド、例など、Java LinkedHashMap のほぼすべての詳細について詳しく説明します。さらに、LinkedHashMap と HashMap の主な違いも特定します。

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

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