Map 集合
单词
clear
可尼哦
删除集合所有的关系
isEmpty
椅子安陪提
判断集合是否为空
remover
瑞母哦
删除
用于存储对应关系的集合Map集合
接口Map;
Map和Collection有什么区别?
Map:是一个双列集合,有对应关系的数据,key是不可以重复的
Collection:单列集合,Collection有不同的子类体系
Map常用功能:
添加功能:
V put(K key,V value);
获取功能:
V get(Object key);
Set keySet() //获取所有的key
Collection values()//获取所有的value
int size()
判断功能:
booleancontainsKey(Objcet key)
booleancontainValue(Object value);
booleanisEmpty();
删除功能:
void clear();
V remove(Object Key);
遍历功能
set>
entrySet();
案例Map集合的使用:
public staticvoid main(String[] args) {
Mapmap=new HashMap();
//put
map.put("00012","Sto112ne");
map.put("0001","Stone");//没有过定义0001的对应value值
map.put("0001","Sto1ne");
//返回的是被替换的值Stone
map.put("0001","Sto2ne");//返回被替换的Sto1ne值
System.out.println(map);
//一轮替换下来,保留最后一个
//containsKey
System.out.println(map.containsKey("0001"));
//判断是否存在指定Key值
//containsValue
System.out.println(map.containsValue("Sto2ne"));//判断是否存在指定value值
//isEmpty
System.out.println(map.isEmpty());
//判断集合是否有数据
//clear();删除
System.out.println(map.remove("0001"));//根据Key删除对于的value值
//size
System.out.println(map.size());//返回对应关系的个数(集合数)
}
set
keys=map.keySet;//是set集合,不允许重复
Collection
values=map.values();//返回一个Collection
Map的遍历
/*Map是一个接口,不能实例化,但是可以多态创建对象,New HashMap
* map的第一种遍历方式
*根据Key遍历
*获取每一个key
*找到每一个value
* */
publicclass Map_Oone {
publicstatic void main(String[] args) {
//创建map集合
MapM=new HashMap();
//添加映射关系
M.put("Stone","ww");
M.put("小波","cql");
M.put("wz","zj");
//得到所有key
Set Keys=M.keySet();//因为Keyset返回的是一个set
//遍历所有的key
for(String key : Keys) {
//每一个key都有对应的value
String value=M.get(key); //根据key找到对应的value值
System.out.println("Key:"+key+"----value"+value);
}
}
}
第二种:
Set>
entrySet();
通过类来遍历
Mapmap=new HashMap();
//添加映射
map.put("St","YY");
map.put("St1","cYY");
map.put("Stf","xYY");
map.put("St1","XXY");
//获取Entry对象
Set>
s=map.entrySet();
//遍历entry对象
for (Map.Entry entry : s) {
String key=entry.getKey();
System.out.println("Key:"+entry.getKey()+" value: "+entry.getValue());
}
//可变的,形参
//定义格式: public是不是静态返回值类型方法名(int ...参数名)
//注意:在可变参数之后,不可再追加参数
//参数的数量自定义,可以给多个,也可一个都不给