Map集合

2019-05-22 06:30:50来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

 

Map是双列集合的根接口,用于存储具有映射关系的数据。

根据key来区分每一项、获取对应的value,所以key不能重复。

key、value都可以是任意类型的数据。

Map提供了一个内部类Entry用来封装键值对,一个键值对就是一个Entry实例。

 

 

 

Map的常用方法(所有子类都可以直接使用):

void put(Object key,Object value)    添加一个键值对,如果已有相同的key,会覆盖原有的键值对

void putAll(Map map)

Object  get(Object key)   获取对应的value

Object remove(Object key)  删除指定的键值对,返回value值。如果key不存在,返回null

boolean  remove(Object key,Object value)   删除指定的键值对,这是java8新增的方法

int  size()    键值对的数量

boolean  isEmpty()   是否是空Map

void clear()    清空Map

boolean  containsKey(Object key)  是否包含指定的key

boolean containsValue(Object value)   是否包含指定的值(一个或多个)

Set  keySet()   获取所有key组成的Set

Collection  values()    返回所有value组成的Collection

Set  entrySet()   获取所有的键值对(Entry实例),组成一个Set集合

 

 

Java8新增的方法:

Object  getOrDefault(Object key, Object defaultValue)   获取指定key的value,如果key不存在,返回设置的默认value(第二个参数) 

Object  replace(Object key,Object value)  替换原来的键值对,如果key不存在,返回null。put(Object key,Object value)是key存才就替换,key不存在会添加该键值对。

Object replace(Object key,Object oldVlue,Object newValue)   替换指定的键值对,key、value要一致才替换

 

 

Map的内部类Entry可用的方法:

Object  getKey()   获取key

Object  getValue()    获取value

void   setValue(Object value)   设置新的value值

 

 

Map集合的实现类都重写了toString(),会以  {key1=value1,key2-value2,key3=value3,.....} 字符串的形式返回。

1  Map map=new HashMap();
2        map.put("name","age");
3        map.put("age",18);
4        //自动调用.toString()
5        System.out.println(map);   //{name=age, age=18}

 


原文链接:https://www.cnblogs.com/chy18883701161/p/10891674.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Java连接MySQL报错:CommunicationsException: Communications l

下一篇:java基础语法4--封装,继承,多态