collection(容器)上课笔记2
map 为什么会出现Map?
HashSet 没有索引,不方便通过索引进行操作所以出现了MAP;所以Map就是在set基础上添加了索引,而且是自定义索引Map是以Key-value(键-值对)的形式来保存数据。
例子:Map map = new HashMap();
map.put(0,"hello");//map.put('零',"hello");索引的形式可以自行定义
map.get(0);//索引位置上的值
索引值不可以重复,值可以
map的泛型
Map<String,String> map = new HashMap<String,String>();
map的迭代(2种方法)
方法1:
map中有keySet();方法可以拿到所有的索引。map中所有的key
set<String> keys = map.keySet();
for(Iterator<String> i=keys.Iterator();i.hasNext();){
String key = i.next();
System.out.println(map.get(key));
}
方法2
map中保存的是entry
entry代表的是一对key-value 它可以看做map的属性(成员变量)(嵌套类)
map中有一个方法map.entryset()
例子:
set<map.Entry<String,String>> entrys = map.entrySet();
for(Iterator<Map.Entry<String,String>> i = entrys.iterator();i.hasNext();){
map.Entry<String,String> entry = i.next();
System.out.println(entry.getValue());
}
如果要保存2个的一定是MAP,成对出现的用MAP