首页 > 试题广场 >

在Java中,关于HashMap类的描述,以下错误的是()?

[单选题]
在Java中,关于HashMap类的描述,以下错误的是()?
  • HashMap能够保证其中元素的顺序
  • HashMap允许将null用作值
  • HashMap允许将null用作键
  • HashMap使用键/值得形式保存数据
数组加链表的存储,
发表于 2020-02-03 10:12:58 回复(0)
更多回答
HashMap的底层是由数组加链表实现的,对于每一个key值,都需要计算哈希值,然后通过哈希值来确定顺序,并不是按照加入顺序来存放的,因此可以认为是无序的,但不管是有序还是无序,它都一个自己的顺序。故A错。
最开始有Hashtable,Hashtable是不允许key和value的值为空的,但后来开发者认为有时候也会有key值为空的情况,因为可以允许null为空,通过查看HashMap的源代码就知道:if(key = null) {putForNullKey(value);};
Map底层都是用key/value键值对的形式存放的
发表于 2017-09-12 11:34:58 回复(2)
HashMap(集合)中值的存储是无序的,依靠键值来存取元素,一个键对应一个值,就是说通过键来找值,并且键值都可为空
发表于 2017-08-21 00:15:15 回复(2)
A.HashMap不能保证元素的顺序,而LinkedHashMap可以保持数据的插入顺序,TreeMap可以按照键值进行排序(可自定比较器)
B.HashMap允许存在多条null值
C.HashMap允许且仅允许一条null键
D.Map就是通过键/值形式保存数据的
可能有误,仅供参考,欢迎大佬批评指正。
发表于 2019-08-31 18:36:43 回复(0)
List 是有序的;

Map 是键值对集合。其中key列就是一个集合,key不能重复,但是value可以重复。 HashMapTreeMapHashtableMap的三个主要的实现类。 HashTable 是线程安全的,不能存储 null  HashMap 不是线程安全的,可以存储 null 

发表于 2017-08-22 09:30:23 回复(2)
HashMap无序,LinkedHashMap按添加元素顺序,TrreMap按自然顺序
发表于 2019-11-27 14:20:11 回复(0)

HashMap

  • HashMap 是一个散列表,它存储的内容是键值对(key-value)映射。
  • HashMap 继承于AbstractMap,实现了Map、Cloneable、java.io.Serializable接口。
  • HashMap 的实现不是同步的,这意味着它不是线程安全的。它的key、value都可以为null。此外,HashMap中的映射不是有序的。

HashTable是Java中的遗留类,现在不怎么用了,也许HashTable类的设计者当时认为null作为key 和value 是没有什么用的。

HashMap是之后的版本引进的类,它的接口Map表达的意义更为广泛,也许HashMap的设计者认为null作为key和value是有实际意义的,所以才允许为null.

当然实际项目中,真的是有value为null的情况的。key为null的情况比较少见,但不代表没有。HashMap允许null为key和value应当是类的设计者思考让这个类更有用的设计吧。

发表于 2018-09-22 12:37:18 回复(0)
发表于 2019-02-16 13:25:38 回复(0)
hashmap是无序的,底层是由数组+链表组成的
编辑于 2021-09-05 23:52:17 回复(0)
HashMap:
  1. Map接口的子实现
  2. 底层结构:数组+链表+红黑树(JDK1.8)
  3. 初始容量:16   扩容机制:2倍 加载因子:0.75
  4. 底层是由数组+链表+红黑树实现,对于每一个key值,都需要计算哈希值;由哈希值进而确定顺序,所以:无序列
  5. 允许存储nulll(存储在下标为0的地方)--->源码:if(key = null) {putForNullKey(value);};如果key==null,可以为空;
  6. 不允许key重复
  7. 不安全
发表于 2021-08-31 23:15:57 回复(0)
HashMap允许使用null值和null键
发表于 2018-07-25 17:58:58 回复(0)
HashMap无序,LinkedHashMap按添加元素顺序,TrreMap按自然顺序
发表于 2022-05-16 08:05:07 回复(0)
A、HashMap继承Map接口,是无序的;键不能重复,但是只可以重复。TreeMap是无序不可重复
B、HashMap值可以多次为NULL
C、HashMap允许键只有一次为null
D、HashMap使用键值对存储数据
发表于 2017-10-19 09:41:02 回复(0)
HashMap是根据哈希值来确定顺序的 是无序的 LikendHashMap可保证数据的插入顺序
HashMap 允许多个值为null
HashMap 只允许一个键为null
发表于 2023-08-22 02:38:36 回复(0)
hashmap线程不安全,性能高,没有顺序,允许空键和空值
发表于 2023-07-30 21:13:52 回复(0)
我在想,实际开发中用null做key不会被骂么?关键字那个null。
发表于 2023-03-11 12:34:54 回复(0)
不同于hashmap,hashtable是不允许键或值为空,且hashtable为线程安全
发表于 2022-10-02 17:38:42 回复(0)
HashMap通过键值定位元素,所以是无序的。HashMap键值都可为空
发表于 2022-09-23 23:39:08 回复(0)
List有序,map无序,key不能重复,value可重复,hashmap、treemap、hashtable是map的三个实现类,hashtable线程安全,不能存储null值,hashmp不是线程安全,可以存null值
发表于 2022-04-02 00:22:12 回复(0)
HashMap继承Map接口,Map集合的特点是无序不可重复,所以HashMap里的元素也是无序的。
发表于 2020-10-09 09:19:39 回复(0)
<p>HashMap是无序的</p>
编辑于 2020-08-21 14:29:59 回复(0)