JAVA中Map集合
6913 ワード
Mapコレクションの概要と特徴 A:Mapインタフェースの概要 APIを参照してください. キーを値のオブジェクト にマッピングする.マッピングは、重複するキー を含むことができない.各キーは、最大1つの値 にしかマッピングできません.
B:MapインタフェースとCollectionインタフェースの違い Mapは2列、Collectionは1列の Mapのキーは一意であり、CollectionのサブシステムSetは一意の である Mapセットのデータ構造値はキーに対して有効であり、値に関係ない.Collectionコレクションのデータ構造は、要素に対して有効な である.
Mapコレクションの機能概要 A:Mapセットの機能概要 a:機能の追加 V put(Kkey,V value):要素を追加します. キーが1回目の記憶である場合、要素を直接記憶しnull を返す.キーが初めて存在する場合は、以前の値を値で置き換え、以前の値 を返す.
b:削除機能 void clear():すべてのキー値ペア要素 を除去する V remove(Object key):キーからキー値ペア要素を削除し、 に戻ります.
c:判定機能 boolean containsKey(Object key):セットに指定されたキーが含まれているかどうかを判断する boolean containsValue(Object value):セットに指定した値が含まれているかどうかを判断する boolean isEmpty():集合が空かどうかを判断する d:取得機能 Set
Mapコレクションの遍歴キーの値 A:キー検索の考え方: すべてのキーのセット を取得する.キーの集合を巡回し、各キー を取得する.キールックアップ値 による
B:ケーススタディ Mapセットの巡回キー探索値
Mapコレクションの遍歴キー値対オブジェクトキーと値 A:キー値対オブジェクトキーと値の考え方: すべてのキー値対オブジェクトのセット を取得する.キー値対オブジェクトの集合を巡回し、各キー値対オブジェクト を取得する.キー値に基づいてオブジェクトのキーと値 を検索する.
B:ケーススタディ Mapセットの巡回キー値対オブジェクトキー探索値
LinkedHashMapの概要と使用
*LinkedHashMapの特徴*底層はチェーンテーブルで実現されており、どのように保存すればいいかを保証しています.
統計文字列内の各文字の出現回数 A:ケーススタディ 需要:統計文字列中の各文字の出現回数String str=「aaabbbbccccccc」;char[] arr = str.toCharArray();//文字列を文字配列に変換するHashMap
集合ネストされたHashMapネストされたHashMap A:ケーススタディ 集合ネストHashMapネストHashMap
HashMapとHashtableの違い HashMapとHashtableの違い HashtableはJDK 1である.0バージョンでは、スレッドが安全で、効率が低く、HashMapはJDK 1です.2バージョンでは、スレッドが安全ではなく、効率が高い
Collectionsツールクラスの概要と一般的な方法の説明 A:Collectionsクラスの概要 集合操作のためのツールクラス B:Collectionsメンバーメソッド public static void sort(List list) public static int binarySearch(List
模擬闘地主のトランプとトランプ A:ケーススタディ 模擬闘地主洗牌と発牌、牌無序列
トランプの地主のトランプとトランプを模擬してそしてトランプに対して並べ替えのコードの実現を行います A:ケーススタディ 闘地主のトランプとトランプをシミュレートし、トランプをソートするコードは を実現する.
Mapコレクションの機能概要
Mapコレクションの遍歴キーの値
HashMap hm = new HashMap<>();
hm.put(" ", 23);
hm.put(" ", 24);
hm.put(" ", 25);
hm.put(" ", 26);
/*Set keySet = hm.keySet(); //
Iterator it = keySet.iterator(); //
while(it.hasNext()) { //
String key = it.next(); // ,
Integer value = hm.get(key); //
System.out.println(key + "=" + value); //
}*/
for(String key : hm.keySet()) { // for
System.out.println(key + "=" + hm.get(key));
}
Mapコレクションの遍歴キー値対オブジェクトキーと値
HashMap hm = new HashMap<>();
hm.put(" ", 23);
hm.put(" ", 24);
hm.put(" ", 25);
hm.put(" ", 26);
/*Set> entrySet = hm.entrySet(); //
Iterator> it = entrySet.iterator();//
while(it.hasNext()) {
Entry en = it.next(); //
String key = en.getKey(); //
Integer value = en.getValue(); //
System.out.println(key + "=" + value);
}*/
for(Entry en : hm.entrySet()) {
System.out.println(en.getKey() + "=" + en.getValue());
}
LinkedHashMapの概要と使用
*LinkedHashMapの特徴*底層はチェーンテーブルで実現されており、どのように保存すればいいかを保証しています.
統計文字列内の各文字の出現回数
集合ネストされたHashMapネストされたHashMap
HashMapとHashtableの違い
Collectionsツールクラスの概要と一般的な方法の説明
模擬闘地主のトランプとトランプ
//
String[] num = {"A","2","3","4","5","6","7","8","9","10","J","Q","K"};
String[] color = {" "," "," "," "};
ArrayList poker = new ArrayList<>();
for(String s1 : color) {
for(String s2 : num) {
poker.add(s1.concat(s2));
}
}
poker.add(" ");
poker.add(" ");
//
Collections.shuffle(poker);
//
ArrayList gaojin = new ArrayList<>();
ArrayList longwu = new ArrayList<>();
ArrayList me = new ArrayList<>();
ArrayList dipai = new ArrayList<>();
for(int i = 0; i < poker.size(); i++) {
if(i >= poker.size() - 3) {
dipai.add(poker.get(i));
}else if(i % 3 == 0) {
gaojin.add(poker.get(i));
}else if(i % 3 == 1) {
longwu.add(poker.get(i));
}else {
me.add(poker.get(i));
}
}
//
System.out.println(gaojin);
System.out.println(longwu);
System.out.println(me);
System.out.println(dipai);
トランプの地主のトランプとトランプを模擬してそしてトランプに対して並べ替えのコードの実現を行います
//
String[] num = {"3","4","5","6","7","8","9","10","J","Q","K","A","2"};
String[] color = {" "," "," "," "};
HashMap hm = new HashMap<>(); //
ArrayList list = new ArrayList<>(); //
int index = 0; //
for(String s1 : num) {
for(String s2 : color) {
hm.put(index, s2.concat(s1)); // HashMap
list.add(index); // ArrayList
index++;
}
}
hm.put(index, " ");
list.add(index);
index++;
hm.put(index, " ");
list.add(index);
//
Collections.shuffle(list);
//
TreeSet gaojin = new TreeSet<>();
TreeSet longwu = new TreeSet<>();
TreeSet me = new TreeSet<>();
TreeSet dipai = new TreeSet<>();
for(int i = 0; i < list.size(); i++) {
if(i >= list.size() - 3) {
dipai.add(list.get(i)); // list TreeSet
}else if(i % 3 == 0) {
gaojin.add(list.get(i));
}else if(i % 3 == 1) {
longwu.add(list.get(i));
}else {
me.add(list.get(i));
}
}
//
lookPoker(" ", gaojin, hm);
lookPoker(" ", longwu, hm);
lookPoker(" ", me, hm);
lookPoker(" ", dipai, hm);
}
public static void lookPoker(String name,TreeSet ts,HashMap hm) {
System.out.print(name + " :");
for (Integer index : ts) {
System.out.print(hm.get(index) + " ");
}
System.out.println();
}