1、下列关于集合的描述中,哪一个是错误的( )
A、集合按照存储结构可以分为单列集合Collection和双列集合Map。
B、List集合的特点是元素有序、元素可重复。
C、Set集合的特点是元素无序并且不可重复。
D、集合存储的对象必须是基本数据类型。

JDK中提供了一系列特殊的类,,这些类可以储存任意类型的对象,并且长度可变,统称为集合。

Java语言中,集合类都位于哪个包中( )
A、java.util
B、java.lang
C、java.array
D、java.collections

1、下列集合中,不属于Collection接口的子类的是( )
A、ArrayList
B、LinkedList
C、TreeSet
D、Properties

下列方法中,不能用于删除Collection集合中元素的是( )
A、clear()
B、isEmpty()
C、remove()
D、removeAll()

isEmpty()判断该集合是否为空

1、关于下列List接口的方法,不是从Collection接口中继承而来的是()
A、size()
B、add()
C、get()
D、remove()

2、下面关于List集合的描述中,哪一个是错误的( )
A、List集合是有索引的
B、List集合可以存储重复的元素
C、List集合存和取的顺序一致
D、List集合没有索引

Set集合为无序不重复,list集合为有序可重复

3、下列关于List接口的描述中,错误的是()
A、List接口继承自Collection接口,是单列集合。
B、List集合中允许出现重复的元素。
C、List集合存储元素是有序的,即元素的存入顺序和取出顺序一致。
D、List集合中所有的元素是以二叉树方式进行存储的。

Tree是以二叉树的方式进行存储的 例如TreeSet和TreeMap

1、下列数据结构中,哪一个是ArrayList类的底层实现( )
A、数组结构
B、链表结构
C、哈希表结构
D、红黑树结构

2、下面关于ArrayList的描述中,错误的是( )
A、ArrayList是List接口的一个实现类。
B、ArrayList内部的数据存储结构是数组
C、ArrayList很适合做大量的增删操作
D、使用ArrayList集合遍历和查找元素很高效

由于ArrayList集合的底层是使用一个数组保存元素,再增加或删除指定位置的元素时,会导致创建新的元素,效率比较低,因此不适合做大量的增删操作。

1、下列关于LinkedList的描述中,错误的是( )
A、LinkedList集合对于元素的增删操作具有很高的效率。
B、LinkedList集合中每一个元素都使用引用的方式来记住它的前一个元素和后一个元素。
C、LinkedList集合对于元素的查找操作具有很高的效率。
D、LinkedList集合中的元素索引从0开始。

ArrayList集合对于元素的查找操作具有很高的效率。

2、下列关于LinkedList类的方法,不是从List接口中继承而来的是( )
A、toArray()
B、pop()
C、remove()
D、isEmpty()

1、下面哪个对象不能直接获取java.util.Iterator迭代器进行迭代( )
A、java.util.HashSet
B、java.util.ArrayList
C、java.util.TreeSet
D、java.util.HashTable

迭代器主要用于迭代访问Collection中的元素

1、下列关于foreach循环的描述,错误的是( )
A、foreach循环只能用于遍历数组或集合中的元素
B、foreach循环可以直接用于遍历Map集合中的元素
C、相当于传统for循环来说,foreach循环简化了书写
D、foreach循环遍历过程中不能对集合或数组元素进行修改

2、以下关于foreach的说法中,哪一个是错误的( )
A、使用foreach遍历集合时,可以对元素进行修改。
B、foreach可以对数组进行遍历。
C、foreach可以对集合进行遍历。
D、foreach循环是一种更加简洁的for循环,也称增强for循环。

下列方法中可以用于往HashSet集合中添加元素的是( )
A、add(Ee)
B、contains(Objecto)
C、clear()
D、iterator()

2、下列有关HashSet集合的描述中,错误的是( )
A、HashSet是Set接口的一个实现类
B、向HashSet存入对象时,对象一般会重写hashCode()和equals()方法
C、向HashSet存入对象时,对象的equals()方法一定会被执行
D、HashSet存储的元素是不可重复的

当调用HashSet集合的add()方法存入元素时,首先调用当前存入对象的hashCode()方法获得对象的哈希值,然后根据对象的哈希值计算出一个存储位置。如果该位置上没有元素,则直接将元素存入。如果该位置上有元素存在,则会调用equals()方法让当前存入的元素依次和该位置上的元素进行比较,如果返回值为false就将该元素存入集合,返回的结果为true则说明有重复元素,就将该元素舍弃。

1、下列选项中,不属于HashMap类的方法的是()
A、get(Objectkey)
B、keySet()
C、comparator()
D、entrySet()

下面关于java.util.HashMap类中的方法描述错误的是( )
A、containsKey(Objectkey)表示如果此映射包含对于指定的键,则返回true
B、remove(Objectkey)表示从此映射中移除指定键的映射关系(如果存在)
C、size()表示返回此映射中的键-值映射关系数
D、values()表示返回此映射所包含的键的Collection视图

values()可以直接获取Map存储所有值的Collection集合

1、下列选项中,哪一个类是Properties类的直接父类( )
A、Map
B、HashMap
C、Hashtable
D、TreeMap

2、下列集合类中,能和IO流结合使用的是()
A、HashMap
B、TreeMap
C、Properties
D、SimpleBindings

1、 下列选项中,哪个可以正确地定义一个泛型( )
A、ArrayList<String>>list = new ArrayList<String>();
B、ArrayList list<String> = new ArrayList ();
C、ArrayList list<String> = new ArrayList<String>();
D、ArrayList<String> list = new ArrayList ();

下列有关Stream并行流的相关描述,错误的是()
A、Stream并行流底层会将源数据拆解为多个流对象在多个线程中并行执行
B、使用Stream并行流在一定程度上可以提升程序的执行效率
C、在创建Stream流对象时,除非有特别声明,否则默认创建的都是并行流
D、不论是Stream并行流还是串行流,都属于Stream流对象,所以它们都拥有相同的流操作方法

java集合相关的习题及解析相关推荐

  1. Java集合之TreeMap源码解析上篇

    上期回顾 上期我从树型结构谈到了红黑树的概念以及自平衡的各种变化(指路上期←戳),本期我将会对TreeMap结合红黑树理论进行解读. 首先,我们先来回忆一下红黑树的5条基本规则. 1.结点是红色或者黑 ...

  2. Java集合Stack源码深入解析

    概要 学完Vector了之后,接下来我们开始学习Stack.Stack很简单,它继承于Vector.学习方式还是和之前一样,先对Stack有个整体认识,然后再学习它的源码:最后再通过实例来学会使用它. ...

  3. Java集合系列---Collection源码解析及整体框架结构

    集合的整体框架结构及依赖关系 1.Collection public interface Collection<E> extends Iterable<E> {} Collec ...

  4. Java集合框架之Collection实例解析

    转载自https://blog.csdn.net/qq_28261343/article/details/52614411 0.集合引入 1)集合的由来? Java是面向对象编程语言,经常操作很多对象 ...

  5. Java集合部分学习+源码解析

    Java集合 对象的容器,实现了对对象常用的操作,类似数组功能. 集合中的数据都是在内存中,当程序关闭或者重启后集合中的数据就会丢失,所以说是临时存储数据的容器 集合整体框架 Collection:单 ...

  6. 深入Java集合ArrayList的源码解析

    现在由大恶人付有杰来从增删改查几个角度轻度解析ArrayList的源码 首先ArrayList的底层数据结构非常简单,就是一个数组. 从源码第115行我们可以得出信息,他的默认数组长度是10. /** ...

  7. Java集合之ArrayList源码解析

    下面我们来看看ArrayList的底层实现, ArrayList继承了AbstractList,实现Cloneable.Serializable.RandomAccess接口, 它的成员属性有Obje ...

  8. Java集合系列---ConcurrentHashMap源码解析

    ConcurrentHashMap是Java并发容器的一员,jdk1.8以后的基本的数据结构和HashMap相似,也是选用了数组+链表/红黑树的结构,在jdk1,.7以前则是采用了分段锁的技术.Con ...

  9. Java集合系列---List源码解析(ArrayList和LinkedList的区别)

    List源码主要讲ArrayList,LinkedList,Vector三个类 1 ArrayList ArrayList是一个底层基于数组的集合, 首先来看一下它的继承关系, public clas ...

最新文章

  1. C C++输出语句printf()输出保留小数点后保留1,2,3,4,5,6,7..n位(默认四舍五入)
  2. 面试题整理 8 字符串排序扩展题
  3. 面试问:Kafka 为什么速度那么快?
  4. C++内存模型和原子类型操作
  5. java面试题十 java数组初始化
  6. ASP.NET Core 中的静态文件
  7. Android 渗透测试学习手册 第九章 编写渗透测试报告
  8. SQL_server 数据库备份信息查看
  9. linux shell 批量清空,shell脚本批量删除docker镜像
  10. Windows下Apache Tomcat 8安装配置
  11. XmlDataProvider的简单应用
  12. UPnP 体系架构和基本原理 —— UPnP的描述文件
  13. 手机开锁显示无法连接到服务器是什么问题,苹果手机连接服务器失败原因 苹果手机连接服务器失败是什么原因...
  14. EVE模拟器如何设置预配
  15. zynq 移植ubuntu_ROS ZYNQ移植
  16. 《卓有成效的管理者》笔记,第一章 卓有成效是可以学会的
  17. 三线性插值(Trilinear Interpolation)详解
  18. Firebase入门使用 01
  19. 对冲基金到底是什么:细数对冲基金的七种武器
  20. 坚果G9致命缺点,一篇文章告诉你坚果G9到底好不好

热门文章

  1. 四个模型与指标体系的建立
  2. Remove from Sidebar后找回
  3. 深度解析企业OA办公系统的好处有哪些?
  4. N0.29——黑客技巧第一招:断网
  5. 有限体积法(1)——一维扩散方程的推导
  6. CRISP-DM(跨行业数据挖掘标准流程…
  7. Redis从入门到深入-删除策略(18)
  8. mysql自学英语差怎么_英语太差怎么办?
  9. 源码解读之Pre-train
  10. 赛扬N4000和赛扬N5095的区别