java地图demo_java 集合(五)MapDemo

packagecn.sasa.demo3;importjava.util.HashMap;importjava.util.Iterator;importjava.util.LinkedHashMap;importjava.util.Map;importjava.util.Set;public classMapDemo {public static voidmain(String[] args) {/*** Map集合 类似于 C#中的 Dictionary,存的是键值对集合,键不能重复

*

* Map接口的常用方法:

* Map接口的实现类:HashMap*/Map map = new HashMap();//添加

map.put(1, "a");

var preObj= map.put(1, "b");//重复的键保存的是后面那个,返回被替换的值

var preObj1 = map.put(3, "a");

map.put(4, "c");

map.put(5, "u");

map.put(6, "t");

map.put(7, "e");

System.out.println(preObj);//a

System.out.println(preObj1); //null

System.out.println(map); //{1=b, 3=a, 4=c, 5=u, 6=t, 7=e}//取值

String mapStr1 = map.get(4);//String mapStr1 = map.get(5);//如果不存在,返回null

System.out.println(mapStr1); //c//移除 返回被移除的对象

String maprev = map.remove(3);

System.out.println(maprev);//a

System.out.println("=========================");//遍历//1、调用keySet,将所有的键存到Set集合中//2、遍历Set集合

Set inSet =map.keySet();

Iterator it =inSet.iterator();while(it.hasNext()) {

Integer key=it.next();

String val=map.get(key);

System.out.println(val);

}

System.out.println("=========================");for(var key : inSet) {

System.out.println(map.get(key));

}

System.out.println("=========================");//entrySet获取的是Entry对象的Set集合, 映射关系对象//Entry是Map类中内部定义的一个接口 , 调用方式是Map.Entry//interface Entry {

Set> mset =map.entrySet();

Iterator> itmap =mset.iterator();while(itmap.hasNext()) {

Map.Entry mapent =itmap.next();

System.out.println(mapent.getKey()+ "====" +mapent.getValue() );

}

System.out.println("=========================");for(Map.Entryentry : map.entrySet()) {

System.out.println(entry.getKey()+ "----" +entry.getValue());

}//=================LinkedHashMap================//LinkedHashMap:保证迭代的顺序

LinkedHashMap link = new LinkedHashMap();

link.put("sa", "class1");

link.put("zz", "class2");

link.put("sxxa", "class3");

link.put("sacc", "class4");

System.out.println(link);

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值