1.HashMap
1.实现了Map接口,无序、无下标
2.Key允许为NULL
3.Key不能重复
4.Value值允许重复
5.底层原理:动态数组+链表(红黑树)
6.线程不安全
1.2 HashMap语法
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
Public class Demo1{
public static void main(String[] args){
Map<Integer,String> map=new HashMap<String,String>();
//增
map.put(1,"jack");
map.put(2."tom");
map.put(3."rose");
map.put(4."tony");
//删
map.remove(2);
//改
map.put(3,"world");
//查:三种遍历方式
//1.通过获取key的值来查找map中的value
Set<Integer> set=map.KeySet();
for(Integer i:set){
Sysout.out.println("kay:"+i+",Value:"+map.getValue(i));
}
//2.直接遍历所有的Value
Collection<String> maps=set.Values();
for(String b:maps){
System.out.println("Value:"+b);
}
//3.直接通过entrySet()方法访问所有的Key和Value
Set<Map.Entry<Integer, String>> entry= map.entrySet();
//通过迭代器遍历
Iterator<Map.Entry<Integer, String>> iterator = entry.iterator();
while (iterator.hasNext()){
Map.Entry<Person, String> next = iterator.next();
System.out.println(next);
}
}
}