首页 > 编程知识 正文

java中put的意思,map的get方法返回值

时间:2023-05-05 03:53:55 阅读:57360 作者:2853

首先,让我们看看在Java API文档中是如何编写这两种方法的。

——33543354——3——————3——3——3————3————3——33——33——333——33——3——3——3——3——3——33——33————333——333——3543333333

获取

是对象密钥(vget )

返回指定键映射到的值。 如果地图不包含键映射关系,则返回null。

更确切地说,如果此映射包含满足(key==null? 对于k==null:key.equals(k ) )的键k到值v的映射关系,此方法返回v。 否则返回空值。 (这样的映射关系最多只有一个。

如果此映射允许null值,则返回null值不一定意味着映射不包含键映射关系。 映射也可以将键以显示方式映射为空。 使用containsKey操作可以区分这两种情况。

参数:

key-返回关联值的键

返回:

指定键映射到的值; 如果映射不包含键映射关系,则返回null

慢速:

ClassCastException-如果密钥不适合此映射(可选)

NullPointerException-如果指定的密钥为空,并且此映射不允许空密钥(可选)

——————————————————————————————————————————

连续性密钥

booleancontainskey (对象密钥) ) ) )。

如果此映射包含指定键的映射关系,则返回true。 更准确地说,只有在此映射包含满意(key==null )时? 对于k==null:key.equals(k ) )的键k的映射关系,返回true。 (这样的映射关系最多只有一个。

参数:

ky—测试此地图中是否有密钥

返回:

如果此映射包含指定键的映射关系,则返回true

慢速:

ClassCastException-如果密钥不适合此映射(可选)

NullPointerException-如果指定的密钥为空,并且此映射不允许空密钥(可选)

——————————————————————————————————————————

在Map集合中,值对象可以为null,并且没有数量限制,因此get ) )方法的返回值为null时,存在以下两种情况:

表示集合中没有该关键对象,

没有将值对象映射到关键对象,即值对象为null。

因此,正如Java API中所述,在Map集合中,应该使用contains key (contains key ) )方法来确定是否存在某个键,而不是使用get (方法来确定)。 以下是示例。

import java.util.HashMap;

import java.util.Map;

公共类映射演示1 {

publicstaticvoidmain (字符串[ ] args ) {

Map map=new HashMap (;

map.put(1,' a ';

map.put(2,null );

系统. out.println (map.get (1); //A

系统. out.println (map.get (2);//空值

系统. out.println (map.get (3);//空值

system.out.println ('========================() ) )

系统. out.println (map.contains key (1) );//真

系统. out.println (map.contains key (2) );//真

系统. out.println (map.contains key (3) ); //false

}

}

执行结果如下。

a

空值

空值

===============================

真的

真的

假的

总结:

在Map集合中,get )方法不应该确定某个键是否存在。 因为如果映射的key值不存在或key存在,但value为null,则全部返回null!

Map集合的key值的判断应该用containsKey ()方法来判断!

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。