在Java中,关于HashMap类的描述,以下错误的是()。A、HashMap使用键/值得形式保存数据B、HashMap 能够保证其中元素的顺序C、HashMap允许将null用作键D、HashMap允许将null用作值

题目

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

  • A、HashMap使用键/值得形式保存数据
  • B、HashMap 能够保证其中元素的顺序
  • C、HashMap允许将null用作键
  • D、HashMap允许将null用作值
参考答案和解析
正确答案:B
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

HashMap与HashTable的区别


正确答案:
       

第2题:

阅读以下说明和Java代码,将应填人 (n) 处的字句写在答题纸的对应栏内。

【说明】

Java.util包中提供了HashMap模板类,该模板类可以表示多个“键一值”对的集合,其中“键”的作用与普通数组中的索引相当,而“值”用作待存储和检索的数据。HashMap实现了Map接口。在Map接口中定义了put和get方法,put方法表示Map对象中加入一个“键-值”对,get方法则通过“键”来获取其对应的“值”。

下面的Java代码中使用了HashMap模板类,将编号为1001、1002、1003的员工信息插入到HashMap对象中,然后输入一个指定的员工编号,通过员工编号来获取员工的基本信息。员工编号为整型编码,而员工的基本信息定义为类employee。HashMap对象与员工对象之间的关系及存储结构如图5—2所示。

【Java代码】

import Java.util.*;

class employee{

employee(String name,String phoneNumber,String address){

this.name=name;

thi s.phoneNumber=phoneNumber ;

this.address=address;

}

String name;

String phoneNumber;

String address;

};

publ ic class jaVaMain{

public static void main(String[]args){

MapemployeeMap=new HashMap(Integer,employee>();

for(Integer employIndex=1001;employIndex<=1003;employIndex++){

String tmp=employlndex. (1 ) ();

employeeMap. (2) (employIndex, (3) (”employee-”+

tmp,“85523927-”

+tmp,”addresS-”

+tmp)

);//将员工编号和员工信息插入到employeeMap对

象中

)

int employeeNo=0;

System.out.print(”请输入员工编号:”);

Scanner S=new Scanner(System.in);

employeeNo=.s.nextInt(); //从标准输入获得员工编号

employee result=employeeMap. (4)(employeeNo);

if( (5) ==null)(

System.out.println(”该员工编号不存在!”);

return;

System.out.println(“你所查询的员工编号为:”+employeeNo);

System.out.printld(“该员工姓名:”+result.name);

System.out.println(“该员工电话:”+result.phoneNumber);

System.out.println(“该员工地址:“+result.address);

}

}


正确答案:(1)toString (2)put (3)new employee (4)get (5)result
(1)toString (2)put (3)new employee (4)get (5)result 解析:在空(1)我们可以看到trap是String类型的,而employlndex是Integer类型的,很显然这里是要把employIndex转换为String类型赋值给临时变量tmp,所以可以使用整型数的“toString'’方法;空(2)和空(3)所在的行根据注释可以看出是希望构造一个新的员工对象,并将这个新对象以及其编号加入HashMap类的实例employee-Map中,而我们从前面的说明可以知道HashMap类中的put函数可以直接实现加入这一功能,所以空(2)的答案为“put”,而空(3)处需要使用。new构造一个新的employee对象,所以答案为“new employee”;空(4)处我们得到了一个员工编号,根据题意这里主要是使用HashMap类的get函数来查询对应员工编号的员工信息,并将其存放到result中,如果没有查到result将为空,并输出提示语句提示该员工编号不存在,所以空(4)的答案为“get”,空(5)的答案为“result”。

第3题:

HashMap和Hashtable正确的说法有()

A.都属于Map接口的类

B.Hashtable类不是同步的,HashMap类是同步的

C.Hashtable类不允许null键和null值

D.HashMap类允许null键和null值


参考答案:A, C, D

第4题:

HashMap和Hashtable正确的说法有()    

  • A、都属于Map接口的类
  • B、Hashtable 类不是同步的,HashMap类是同步的
  • C、Hashtable 类不允许 null 键和 null 值
  • D、HashMap 类允许null 键和null 值

正确答案:A,C,D

第5题:

简述HashMap和Hashtable的区别。


正确答案: 都属于Map接口的类,实现了将惟一键映射到特定的值上。  
HashMap 类没有分类或者排序。它允许一个 null 键和多个 null 值。
Hashtable 类似于 HashMap,但是不允许 null 键和 null 值。它也比HashMap 慢,因为它是同步的。

第6题:

Hashtable的原理,并说出HashMap与Hashtable的区别


正确答案:

 

HashTable的原理:通过节点的关键码确定节点的存储位置,即给定节点的关键码k,通过一定的函数关系H(散列函数),得到函数值H(k),将此值解释为该节点的存储地址.
HashMap 与Hashtable很相似,但HashMap 是非同步(unsynchronizded)和可以以null为关键码的.

第7题:

Hashtable,HashMap,ConcurrentHashMap都是Map的实现类,它们在处理null值的存储上有细微的区别,下列哪些说法是正确的:

A.Hashtable的KV都不可以为null

B.HashMap的KV都可以为null

C.HashMap的K不可以为null,V可以为null

D.ConcurrentHashMap的KV都不可以为null


正确答案:ABD

第8题:

Hashtable和HashMap有什么区别?


正确答案:

 

a.Hashtable是继承自陈旧的Dictionary类的,HashMap继承自AbstractMap类同时是Java 1.2引进的Map接口的一个实现。
b.也许最重要的不同是Hashtable的方法是同步的,而HashMap的方法不是。这就意味着,
虽然你可以不用采取任何特殊的行为就可以在一个 多线程的应用程序中用一个Hashtable,
但你必须同样地为一个HashMap提供外同步。一个方便的方法就是利用Collections类的静态的synchronizedMap()方法,
它创建一个线程安全的Map对象,并把它作为一个封装的对象来返回。这个对象的方法可以让你同步访问潜在的HashMap。
这么做的结果就是当你不需要同步时,你不能切断Hashtable中的同步(比如在一个单线程的应用程序中),
而且同步增加了很多处理费用。
c.第三点不同是,只有HashMap可以让你将空值作为一个表的条目的key或value。
HashMap中只有一条记录可以是一个空的key,但任意数量的条目可以是空的value。
这就是说,如果在表中没有发现搜索键,或者如果发现了搜索键,但它是一个空的值,那么get()将返回null。
如果有必要,用containKey()方法来区别这两种情况。
d.HashMap去掉了Hashtable的contains方法,保留了containsValue和containsKey方法
e.Hashtable中hash数组默认大小是11,增加的方式是 old*2+1。HashMap中hash数组的默认大小是16,而且一定是2的指数

第9题:

如果HashMap发生大量Hash冲突,则会导致()

  • A、HashMap崩溃,导致不可用
  • B、HashMap没有影响,依然可以高效的工作
  • C、HashMap的性能会有一点影响,但总体依然是高效的
  • D、HashMap依然可用,但是性能受到重创

正确答案:D

第10题:

下列哪些说法是正确的?()

  • A、LinkedList集合在增删元素时效率较高
  • B、ArrayList集合在查询元素时效率较高
  • C、HashMap不允许出现一对null键null值
  • D、HashSet集合中元素可重复并且无序

正确答案:A,B

更多相关问题