-
Map的常用方法
---------------------------------------
---------------------------------------
---------------------------------------
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import org.junit.Test;
import org.lfz._13_02_set.Person;
/*
* 1、key是用Set来存放的,不可重复。value是用Collection来存放的,可重复。
* 一个key-value对是一个Entry。所有的Entry都是用Set来存放的,也是不可重复的。
* 2、向HashMap中添加元素的时,会调用key所在类的equals方法,判断两个key是否相同。
* 若相同只能添加后添加的那个元素。key重复,原来的value值会被覆盖。
* */
public class _001_HashMap {
@Test
public void test1() {
HashMap m = new HashMap();
m.put("aa",213);
m.put("bb",213);
m.put("cc",213);
m.put("cc",214);
m.put("dd",213);
m.put(1,213);
m.put(null,null);
m.put(new Person("hello",22),"hello");
m.put(new Person("hello",22),123);
System.out.println(m.size());
System.out.println();
/*1、遍历key集合*/
Set keySet = m.keySet();
for(Object ob : keySet) {
System.out.println(ob);
}
System.out.println();
/*2、遍历value集合*/
Collection values = m.values();
for(Object ob : values) {
System.out.println(ob);
}
System.out.println();
/*3、遍历key-value对方式①*/
Set keySet1=m.keySet();
for(Object ob:keySet1) {
System.out.println(m.get(ob));
}
System.out.println();
/*3、遍历key-value对方式2*/
Set entrySet = m.entrySet();
for(Object ob:entrySet) {
Map.Entry entry = (Map.Entry) ob;
System.out.println(entry.getKey()+" "+entry.getValue());
}
}
}
输出结果: