JAVAMap的所有方法

Map map = new HashMap();  //创建map
	Map iMap = new HashMap();
	iMap.put("狂人日记","鲁迅") 
    map.put("家","巴金"); //添加一个键值对,如果key已存在就覆盖,且返回被覆盖的值
    map.put("朝花夕拾","冰心");
    map.put("骆驼祥子","老舍");
    map.put("项链","莫泊桑");
	map.remove("家")  //删除指定key的键值对,返回被删除的key关联的value,不存在返回null
	map.remove("家","巴金")  //删除指定键值对,成功返回true
    map.size() //返回map中键值对的个数
    map.clear()  //删除map中的所有键值对
    map.isEmpty()  //判断map是否为空
    map.get("项链")  //返回指定Key所对应的value,不存在则返回null
    map.containsKey("家") //判断Map中是否包含指定的Key
	map.containsValue("巴金")  //判断Map中是否包含指定的Value
    Collection set = map.entrySet()  //返回Map中键值对所组成的Set.集合元素是Map.Entry(Map的内部类)对象
    Collection set = map.keySet()  //返回Map中key的set集合
	Collection list = map.values()  //返回该Map里所有value组成的Collection
//Map中包含了一个内部类Entry,包含一下三个方法
	Collection set = map.entrySet()
	set.forEach(entry -> 
		System.out.println("--->"+obj.getKey())  //返回该entry中包含的key
		System.out.println("--->"+obj.getValue())  //返回该entry中包含的value
		obj.setValue("佚名")  //设置entry中的value,并返回value
	)
//使用remappingFunction根据键值对计算一个新的value,不为空就覆盖,或者添加;为空则删除原键值对;
    Object compute(Object key,BiFunction remappingFunction)
    map.compute("爱的教育",(key,vlaue)->((String)key).length())

    //key对应的键值对不存在或者value为空,函数才起作用。使用remappingFunction根据key计算出value,如果value不为null,则赋值或者添加;value为空则方法失效,不做任何改变
    object computeIfAbsent(object key, Function remappingFunction)

    //对应的key存在且value不为空,方法生效,通过键值对计算出新的value,不为空则赋值,为空就删去原有的键值对
    Object computeIfPresent(object key,BiFunction remappingFunction)

    //遍历Map
    void forEach(BiFunction action)
    map.forEach((k,v)-> System.out.println("key:"+k+" value:"+v));

    //得到指定key的value,如果key不存在,则返回defaultValue
    object getOrDefault(object key,V defalutValue)
    System.out.println(map.getOrDefault("活着","余华"));

    //通过key得到集合中value,如果value不为空,则使用 remappingFunction根据旧value和新value计算出一个结果去覆盖集合中原有的value,如果value为空,则直接用参数key,value覆盖.如果计算结果为null则删除原有键值对
    Object merge(object key,object value,BiFunction remappingFunction)

    //如果key在集合中的value为空或则键值对不存在,则用参数value覆盖
    object putIfAbsent(Object key,object value)

    //替换key在集合中的value。如果key不存在不会添加新的键值对。
    object replace(object key,object value)

    //替换指定的键值对,成功返回true,不存在添加新的键值对
    boolean replace(K key,V oldValue,V newValue)

    //对集合中的所有键值对执行计算,并将返回结果作为value覆盖
    replaceAll(BiFunction function)
    map.replaceAll((k,v)->((String)k).length());
for(Object key : map.keySet()){
		System.out.printLn(key +"---> "+map.get(key))
	}
map.forEach((k,v)-> System.out.println("key:"+k+" value:"+v));

  • 3
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

代码敲上天.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值