集合部分测试题
考试宣言:
同学们, 考试考多少分不是我们的目的! 排在班级多少的名次也不是我们的初衷!
我们考试的目的是要通过考试中的题目,检查大家在这段时间的学习中,是否已经把需要掌握的知识掌握住了,如果哪道题目你不会做,又或者做错了, 那么不用怕, 考完试后, 导师讲解的时候你要注意听! 那时候学会了, 记住了, 也一样不影响你高薪就业!
本套题共40道不定项选择题,其中单选30道,多选10道。单选2分/题,多选4分/题。多选题不全对半分,全对满分。
1.下列选项哪个正确( AC)
a)对象数组是引用数据类型
b)对象数组是基本数据类型
c)对象数组存储的元素是引用数据类型
d)对象数组存储的元素是基本数据类型
2.下列选项关于集合和数组的区别说法正确的是( A
a)集合的长度是可变的,数组的长度是不可变的
b)集合的长度是不可变的,数组的长度是可变的
c)集合和数组都能存储基本数据类型和存储引用类型
d)集合只能存储基本数据类型,数组既能存储基本类型也能存储引用类型
3.Collection获取长度的方法是哪个(B )
a)length()
b)size()
c)add()
d)iterator()
4.将集合转换成数组的方法是哪个( C )
a)toCharArray()
b)getBytes()
c)toArray()
d)size()
5.iterator()方法的功能是什么( C)
a)获取集合对象
b)获取集合的长度
c)获取迭代器对象
d)获取集合中元素
6.下面哪些方式可以避免并发修改异常的发生( ABC)
a)用普通for循环和get()遍历集合增删集合元素
b)用列表迭代器遍历集合,使用列表迭代器的add()添加元素
c)用普通迭代器遍历集合,使用普通迭代器的remove()删除元素  iterator(普通迭代器)
d)没有方法能解决并发修改异常
7.下列关于Vector说法正确的是(AD )
a)Vector是JDK1.0开始出现的
b)Vector是一个抽象类
c)Vector是一个接口
d)Vector后来被ArrayList取代了,但是某些老项目中还在延续使用
8.数组数据结构的特点是什么( AC
a)增删慢
b)查询慢
c)查询快
d)增删快
9.下列描述ArrayList集合特点正确的是( BD )
a)底层是链表数据结构
b)底层是数组数据结构
c)是线程安全的
d)是线程不安全的
10.列描述LinkedList集合特点正确的是(D  )
a)底层是数组数据结构
b)底层是二叉树结构
c)是线程安全的
d)是线程不安全的
11.下列关于ArrayList的contains(Object obj)方法的理解正确的是(ABC  )
a)底层会调用obj的equals方法
b)如果这个方法的返回值是true,就说明集合中含有obj这个元素
c)如果这个方法的返回值是false,就说明集合中没有obj这个元素
d)这是一个静态方法
12.在下列代码中,关于list.remove(new Person(“张三”,23))方法的作用理解正确的是( CD )
ArrayList list = new ArrayList();
list.add(new Person("张三", 23));
list.add(new Person("张三", 23));
list.add(new Person("李四", 24));
ve(new Person("张三", 23));
a)代码移除了所有的张三
b)如果Person类实现了equals方法,那么就会移除所有张三
c)如果Person类实现了equals方法,那么就会移除一个张三
d)可能不会移除任何对象
13.下列代码list中的元素存储的顺序是( D )
LinkedList list = new LinkedList();
list.addFirst("a");
list.addFirst("b");
list.addFirst("c");
list.addFirst("d");
list.addLast("e");
System.out.println(list);
a)abcde
b)edcba
c)acdbe
d)dcbae
14.Java中,关于队列的的说法正确的是(AD  )
a)队列的特点是先进先出
b)队列的特点是后进先出
c)队列的特点是先进后出
d)队列的特点是后进后出
15.下列有关泛型的代码中,说法正确的是(A  ) ?
    ArrayList<Person> list = new ArrayList<Person>();
a)list集合里面只能存放Person对象
b)list集合里面能存放字符串
c)list集合里面能存放Person的子类对象
d)list集合里面可以存放Object类型的对象
16.下列关于泛型说法不正确的是(B  )
a)泛型的出现可以把运行时出现的问题提前放到编译时期就发现
b)泛型的出现可以把编译时出现的问题放到运行之后就发现
c)泛型可以避免强制类型转换
java中字符串转数组
d)泛型是一种安全机制
17.观察如下代码,下列说法不正确的是( A  )
    public class Tool<Q> {
       
    }
a)格式错误,因为Q不知道是什么
b)可以这样创建对象:new Tool<String>();
c)去掉Tool上的Q,可以用String来代替
d)可以这样创建对象:new Tool<Person>();
18.下面泛型方法中,说法正确的是( A  )?
    private <T,Q> void show2(T t) {
           
    }
a)在调用show2方法的时候,才会确定T的类型是什么
b)此方法会报错,因为格式不对
c)定义格式错误,此方法中<T,Q>应该改为<T>
d)定义格式错误,参数列表应该改为(T,Q t)
19.下列增强for循环的代码中,有关说法正确的是( D ) ?
    for(int x : arr){
        System.out.println(x);
}
a)arr必须是一个int数组
b)arr 可以是字符串数组
c)arr 必须是一个集合
d)arr可以是数组也可以是集合对象
20.要遍历元素对象,下面横线处填写的代码应为( BC  )
    ArrayList<String> list = new ArrayList<>();
    list.add("a");
    list.add("b");
    list.add("b");
    for(  ____________  ){

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。