Java Map接口 (推荐学习:java课程)
java.util.Map 接口 查找表
Map 体现的结构是一个多行两列的表格,左列称为key
右列称为value.
Map 总是根据key来获取对应的value.因此保存数据时是成对保存的,并且应当将查询的数据作为value查询条件作为key进行保存.
Map要求key 不允许重复(equals 比较判定)
常用的实现类
java.util.HashMap,散列表,哈希表
查询速度最快的数据结构
基本用法
public class MapDemo{
public static void main(String[] args){
Mapmap = new HashMap<>();
map.put("攻击",60);
Integer value=map.put("攻速",8);
System.out.println(value); // null
value=map.put("攻速",6);
System.out.println(value); // 8
value =map.get("攻击");
System.out.println(value);//60
value = map.remove("攻击");
System.out.println(map);
System.out.println(value);
int size = map.size();
System.out.println(size);
boolean ck = map.containsKey("攻速");
System.out.println("包含key:"+ck);
boolean cv = map.containsValue(96);
System.out.println("包含value:"+cv);
}
}
Map的遍历
import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
public class MapDemo2 {
public static void main(String[] args) {
Map map
= new HashMap<>();
map.put("语文", 99);
map.put("数学", 98);
map.put("英语", 97);
map.put("物理", 96);
map.put("化学", 99);
System.out.println(map);
Set keySet = map.keySet();
for(String key : keySet) {
System.out.println("key:"+key);
}
Set> entrySet
= map.entrySet();
for(Entry e:entrySet) {
String key = e.getKey();
Integer value = e.getValue();
System.out.println(key+":"+value);
}
}
}