基礎代碼:
public class Demo01 { public static void main(String[] args) { //HashMap 存儲自定義類型鍵值 HashMap<String, String> map=new HashMap<String, String>(); //存值 map.put("張三", "123"); map.put("小紅", "123"); map.put("張三", "456"); //刪除 //map.remove("張三"); //取值 //System.out.println(map.get("張三")); //遍歷 //1.keySet+增強for 遍歷 //獲取所有key所在的Set集合 Set<String> set =map.keySet(); for (String key : set) { System.out.println(map.get(key)); } //2.keySet+iterator 遍歷 Iterator<String> it=set.iterator(); while (it.hasNext()) { String k=it.next(); String value=map.get(k); //打印key+value System.out.println(k+" "+value); } } }
遍歷:
public class Demo02 { public static void main(String[] args) { //Entry<k, v> HashMap<Integer, String> map=new HashMap<Integer,String>(); map.put(1, "邢昊天"); map.put(2, "姜澤坤"); map.put(3, "劉小雨"); //遍歷 //獲取所有entry對象所在的set集合 Set<Map.Entry<Integer, String>> set =map.entrySet(); for (Map.Entry<Integer, String> entry : set) { int key=entry.getKey(); String value=entry.getValue(); System.out.println(key+" "+value); } //獲取set集合的迭代器對象 Iterator<Map.Entry<Integer, String>> it=set.iterator(); while (it.hasNext()) { //得到每一個entry對象 Map.Entry<Integer, String> entry = it.next(); //從entry對象中獲得key int key=entry.getKey(); //從entry對象中獲取value String value=entry.getValue(); System.out.println(key+" "+value); } } }
自定義類型:
public class Demo03 { public static void main(String[] args) { HashMap<Person, String> map=new HashMap<Person,String>(); map.put(new Person("小紅", 18),"java1018"); map.put(new Person("小綠", 19),"java1018"); map.put(new Person("小紫", 20),"java1217"); map.put(new Person("小紅", 18),"java1217"); //遍歷 Set<Person> set=map.keySet(); for (Person p : set) { System.out.println(p+" "+map.get(p)); } } }
.