public class test{
public static void main(String[] args) {
/**
* 1.map和collection并列存在,map用于保存具有映射关系的Key-Value键值对
*2.Map的键值对可以是任意的数据类型,底层的构造器显示传入Object父类,并且封装到HashMap$Node对象中
*3.Map中的Key不允许重复,前面HashSet中讲过,但是Value是可以重复的,后面的key中的Value会替换掉前面的
* 4.key和value都可以为null,但是key只能有一个null,value可以有无数个null
* 5.String常用来做Key
* 6.key和value存在单向的对应关系,可以通过key访问对应的value
*/
Map map = new HashMap();//因为我们的hashmap存放元素底层是根据元素的Hash值存放的,因此存放顺序和取出顺序不一定一样
map.put("1","hsp");
map.put("2","ys");
map.put("2","dsa");
map.put(null,"hsp");
map.put(null,"da");
map.put(2,"ys");
Set keyset = map.keySet();
for (Object key : keyset) {
System.out.println(key + " " + map.get(key));
}
System.out.println("=======================");
Iterator iterator = keyset.iterator();
while (iterator.hasNext()) {
Object key = iterator.next();
System.out.println(key + " " + map.get(key));
}
System.out.println("=======================");
Collection values = map.values();
for (Object o :values) {
System.out.println(o);
}
System.out.println("=======================");
Iterator iterator1 = values.iterator();
while (iterator1.hasNext()) {
Object value = iterator1.next();
System.out.println(value);
}
System.out.println("=======================");
Set set = map.entrySet();
for (Object o :set) {
Map.Entry entry = (Map.Entry)o;
System.out.println(entry.getKey() + " " + entry.getValue());
}
System.out.println("=======================");
Iterator iterator2 = set.iterator();
while (iterator2.hasNext()) {
Object obj = iterator2.next();
Map.Entry entry = (Map.Entry)obj;
System.out.println(entry.getKey() + " " + entry.getValue());
}
}
}
HashMap获取k - v或者只获取value的六种方法
最新推荐文章于 2025-11-23 13:27:25 发布
1361

被折叠的 条评论
为什么被折叠?



