Java mapは配列を保存し、値コードを取り出して詳細に説明する。
mapの値を取得するには主に4つの方法があります。この4つの方法は2つに分類されます。1つは、map.keySet()を呼び出してkeyとvalueの値を取得します。もう1つは、map.entrySet()の方法で値を取る方法です。前者は主にすべてのkeyの集合を先に取得し、valueの値を調べたい場合はkelueを検索します。後者は直接にkeyとvalueのキーを取り出して、一回だけ調べて、その性能に対してもっといいと思います。map.entrySetを使ったほうがいいと思います。具体的にはmap.keySet()とmap.EntrySet()の比較を参照してください。次に、四つのエルゴード方法とmapの要素をkeyまたはvalueで比較してサイズを紹介します。
まとめ:
以上がJava map保存配列についてです。そして、値コードの詳細な内容を取り出して、皆さんに助けてほしいです。興味のある友達はJavaにおけるmapエルゴード方式の選択問題の詳細を参照してください。 Javaにおけるmap内部記憶方式の解析 Javabeanとmapの相互変換方法コード例 など、何か問題があったらいつでもメッセージを残してください。
package com.sort;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
public class Test {
public static void main(String[] args) {
Map<String,String> map = new HashMap<String,String>();
map.put("b","4");
map.put("a","5");
map.put("c","3");
map.put("d","5");
// map.keySet()
// : key , value;
/*for(String key : map.keySet()){
String value = map.get(key);
System.out.println(key+" "+value);
}*/
// , key;
/*Iterator<String> iter = map.keySet().iterator();
while(iter.hasNext()){
String key=iter.next();
String value = map.get(key);
System.out.println(key+" "+value);
}*/
// map.entrySet()
// : map , key value
/*for(Entry<String, String> vo : map.entrySet()){
vo.getKey();
vo.getValue();
System.out.println(vo.getKey()+" "+vo.getValue());
}*/
/*// , key
Iterator<Entry<String,String>> iter = map.entrySet().iterator();
while(iter.hasNext()){
Entry<String,String> entry = iter.next();
String key = entry.getKey();
String value = entry.getValue();
System.out.println(key+" "+value);
}*/
// map<String,String> ArryList, list Entry<String,String>
List<Entry<String,String>> list = new ArrayList<Map.Entry<String,String>>(map.entrySet());
Collections.sort(list,new Comparator<Entry<String,String>>(){
@Override
public int compare(Entry<String, String> o1,
Entry<String, String> o2) {
int flag = o1.getValue().compareTo(o2.getValue());
if(flag==0){
return o1.getKey().compareTo(o2.getKey());
}
return flag;
}
});
// list map
for(Entry<String, String> en : list){
System.out.println(en.getKey()+" "+en.getValue());
}
}
}
運転出力
c 3
b 4
a 5
d 5
注:value値が同じであれば、keyサイズを比較し、小さい時から大きな順に並べ替えます。まとめ:
以上がJava map保存配列についてです。そして、値コードの詳細な内容を取り出して、皆さんに助けてほしいです。興味のある友達はJavaにおけるmapエルゴード方式の選択問題の詳細を参照してください。 Javaにおけるmap内部記憶方式の解析 Javabeanとmapの相互変換方法コード例 など、何か問題があったらいつでもメッセージを残してください。