对于Java中的集合类java.util.ArrayList,以下说法正确的是()。A、这个集合中的元素是无序的B、可以通过键来获取这个集合中的元素C、可以通过addFirst()方法,在列表的首部插入元素D、在对这个集合的元素执行遍历操作时,效率比较高

题目

对于Java中的集合类java.util.ArrayList,以下说法正确的是()。

  • A、这个集合中的元素是无序的
  • B、可以通过键来获取这个集合中的元素
  • C、可以通过addFirst()方法,在列表的首部插入元素
  • D、在对这个集合的元素执行遍历操作时,效率比较高
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

通过集合A.subList()获取子集合B,下列说法哪些是正确的:

A.返回的集合B没有实现Serializable接口,不能被序列化,所以不能应用于RPC场景

B.在B集合中添加某个元素,那么A集合也会添加进去此元素

C.集合A中元素的修改不会影响到集合B的任何操作

D.对A元素个数的修改,会导致集合B的遍历产生ConcurrentModificationException异常


正确答案:ABD

第2题:

Java中有几种常用的集合类及其区别如何?怎样获取集合中的各个元素。


正确答案:常用的集合有向量、堆栈、队列等。它们可以使用枚举等方法来获集合中的元素,有的还可使用elemnetAt()等方法来获取其中的元素。

第3题:

Logic标记库中的标记处理集合元素,集合类型可以是()

A.java.util.Iterator

B.java.util.Collection

C.java.util.Map

D.java.util.Collections


参考答案:A, B, C

第4题:

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

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

正确答案:A,B

第5题:

关于Java的集合下面说法错误的是()

  • A、Collections是针对集合类的一个帮助类。提供了一系列静态方法实现对各种集合的搜索、排序、线程完全化等操作
  • B、Collection没有get()方法来取得某个元素。只能通过iterator()遍历元素。
  • C、HashMap会利用对象的hashCode来快速找到key。
  • D、List、Set、Map 都是不允许重复的集合。
  • E、Map中元素,可以将key序列、value序列单独抽取出来。

正确答案:D

第6题:

当对Set类型的集合使用add()方法时,若方法返回false说明什么?()  

  • A、 添加的元素不存在
  • B、 从集合中删除元素
  • C、 元素添加到集合中
  • D、 添加的元素在集合中已经存在

正确答案:D

第7题:

列举几种可以遍历集合对象中元素的方法。


正确答案:可以使用Iterator接口定义的方法来遍历类集,或直接使用循环语句来对集合中对象进行遍历。

第8题:

阅读以下关于某订单管理系统的技术说明、部分UML类图及Java程序,将Java程序中(1)~(5)空缺处的语句填写完整。

[说明]

某订单管理系统的部分UML类图如图5-16所示。

在图5-16中,Product表示产品,ProductList表示所销售产品的列表,Order表示产品订单,Orderltem表示产品订单中的一个条目,OrderList表示订单列表,SalesSystem提供订单管理系统的操作接口。各个类的部分属性和方法说明如表5-23所示。

可以使用类java.util.ArrayList<E>来实现对象的聚集关系,如图5-16中OrderList与Order之间的聚集关系。

for-each循环提供了一种遍历对象集合的简单方法。在for-each循环中,可以指定需要遍历的对象集合及用来接收集合中每个元素的变量,其语法如下:

for(用来接收集合中元素的变量:需要遍历的对象集合)

如果要使用for-each循环来遍历对象集合,那么包含该对象集合的类必须实现接口java.util.Iterable<T>。

Java程序7-1和Java程序7-2分别给出了类OrderList和方法statistic的Java代码。


正确答案:这是一道要求读者掌握Java语言中的java.util.ArrayListE>和for…each循环的程序分析题。本题的解答思路如下。 仔细阅读Java程序7-1——类OrderList的Java代码可知类OrderList中具有一个类型为 ArrayListOrder>的属性。结合图5-16订单管理系统的部分UML类图可知类OrderList和Order之间具有聚集关系。由试题给出的关键信息“可以使用类java.util.ArrayListE>来实现对象的聚集关系”、“如果要使用for…each循环来遍历对象集合那么包含该对象集合的类必须实现接口java.util.IterableT>”可以推理出(1)空缺处所填写的内容是“implements IterableOrder>”。 在定义了ArrayListE>的类中必须实现接口IteratorOrder>中的方法iteratorOrder>∷iterator()因此(2)空缺处所填写的实现体应为:return this.orders.iterator()或return orders.iterator()。 仔细阅读Java程序7-2——方法statistic的Java代码可以初步判断要填写(3)~(5)空缺处首先要将方法statistic的功能及实现流程分析清楚。而且(3)~(5)空缺处所填写的内容与for…each循环的使用有关;使用for…each循环时关键是要确定所遍历的是哪一个对象集合。在类SalesSystem中已经具有两个对象集合即属性catalog和sales。 方法statistic的功能是依次统计产品目录中每个产品的订购总量并打印出每个产品的编号、说明、订购总量和订购金额。若要统计产品目录中每个产品的订购总量需要对3个对象集合进行遍历;产品目录(ProductList)、订单列表(OrderList)及Order(需要对订单中的所有订单项进行查询统计每个订单上所订购的产品的数量)。由此可以得出实现该方法的基本流程是:①从产品目录中取出一个产品→②在订单目录依次查询每张订单→③逐一查询某个订单中的所有订单项。 ①从产品目录中取出一个产品这对应第1条for…each语句此时被遍历的对象集合为ProductList。根据试题给出的for…each循环的语法——“for(用来接收集合中元素的变量:需要遍历的对象集合)”和(3)空歌处前半句的“Productproduct:”可以推断出(3)空缺处应填写ProductList类的对象而类SalesSystem中的catalog就是ProductList的实例。并且结合图5-16的UML类图可知类ProductList和Product之间具有聚集关系。依照Java的程序设计规范引用类的属性时应使用“this.”属性名的形式。因此(3)空缺处的答案为this.catalog(或catalog)。 ②在订单目录依次查询每张订单其对应于第2条for…each语句。根据第(3)空缺处的解题思路可以确定出(4)空缺处应填写OrderList类的对象即类SalesSystem的属性sales。因此(4)空缺处的答案为this.sales(或sales)。 ③逐一查询某个订单中的所有订单项其对应于第3条for…each语句。由图5-16类图上可以看出与类Order具有聚集关系的类是OrderItem。由此可以确定(5)空缺处应填写类OrderItem的对象。由于类SalesSystem中没有这种类型的属性因此需要在这里定义一个临时对象。另外在if语句中出现了一个标识符item但是在上下文中并没有出现对它的定义。由此可以推断item的定义应该在(5)空缺处提供。因此(5)空缺处的答案为OrderItem item。
这是一道要求读者掌握Java语言中的java.util.ArrayListE>和for…each循环的程序分析题。本题的解答思路如下。 仔细阅读Java程序7-1——类OrderList的Java代码可知,类OrderList中具有一个类型为 ArrayListOrder>的属性。结合图5-16订单管理系统的部分UML类图可知,类OrderList和Order之间具有聚集关系。由试题给出的关键信息“可以使用类java.util.ArrayListE>来实现对象的聚集关系”、“如果要使用for…each循环来遍历对象集合,那么包含该对象集合的类必须实现接口java.util.IterableT>”可以推理出,(1)空缺处所填写的内容是“implements IterableOrder>”。 在定义了ArrayListE>的类中,必须实现接口IteratorOrder>中的方法iteratorOrder>∷iterator(),因此(2)空缺处所填写的实现体应为:return this.orders.iterator(),或return orders.iterator()。 仔细阅读Java程序7-2——方法statistic的Java代码可以初步判断,要填写(3)~(5)空缺处,首先要将方法statistic的功能及实现流程分析清楚。而且(3)~(5)空缺处所填写的内容与for…each循环的使用有关;使用for…each循环时,关键是要确定所遍历的是哪一个对象集合。在类SalesSystem中已经具有两个对象集合,即属性catalog和sales。 方法statistic的功能是依次统计产品目录中每个产品的订购总量,并打印出每个产品的编号、说明、订购总量和订购金额。若要统计产品目录中每个产品的订购总量,需要对3个对象集合进行遍历;产品目录(ProductList)、订单列表(OrderList)及Order(需要对订单中的所有订单项进行查询,统计每个订单上所订购的产品的数量)。由此可以得出实现该方法的基本流程是:①从产品目录中取出一个产品→②在订单目录依次查询每张订单→③逐一查询某个订单中的所有订单项。 ①从产品目录中取出一个产品,这对应第1条for…each语句,此时被遍历的对象集合为ProductList。根据试题给出的for…each循环的语法——“for(用来接收集合中元素的变量:需要遍历的对象集合)”和(3)空歌处前半句的“Productproduct:”可以推断出,(3)空缺处应填写ProductList类的对象,而类SalesSystem中的catalog就是ProductList的实例。并且结合图5-16的UML类图可知,类ProductList和Product之间具有聚集关系。依照Java的程序设计规范,引用类的属性时,应使用“this.”属性名的形式。因此(3)空缺处的答案为this.catalog(或catalog)。 ②在订单目录依次查询每张订单,其对应于第2条for…each语句。根据第(3)空缺处的解题思路,可以确定出(4)空缺处应填写OrderList类的对象,即类SalesSystem的属性sales。因此(4)空缺处的答案为this.sales(或sales)。 ③逐一查询某个订单中的所有订单项,其对应于第3条for…each语句。由图5-16类图上可以看出,与类Order具有聚集关系的类是OrderItem。由此可以确定(5)空缺处应填写类OrderItem的对象。由于类SalesSystem中没有这种类型的属性,因此需要在这里定义一个临时对象。另外在if语句中出现了一个标识符item,但是在上下文中并没有出现对它的定义。由此可以推断item的定义应该在(5)空缺处提供。因此(5)空缺处的答案为OrderItem item。

第9题:

对于java.util.TreeSet类,下面哪些描述是正确的()

  • A、这个集合中的元素是有序的
  • B、这个集合是保证不可变的
  • C、集合中的元素保证是唯一的
  • D、集合中元素使用唯一的key访问
  • E、集合中的元素保证是同步的

正确答案:A,C

第10题:

关于集合框架特征,说法不正确的是()

  • A、Map集合中的键对象不允许重复
  • B、有序List集合中的元素允许重复
  • C、有序Set集合中的元素不允许重复
  • D、无序Collection集合中的元素允许重复、无序

正确答案:A

更多相关问题