资源描述
` Java基础班第三阶段测试
注意:
直接将自己的答案编写在每一道试题的下面,代码要规范,最好使用不同背景加注,提交试卷的时候文件的命名格式如:“姓名.doc”
姓名: _____________
一、 单选题(每题2分)
1. String类中的getBytes()方法的作用是( C )
A. 将整数变成字符串
B. 将字符串变成字符数组
C. 将字符串变成字节数组
D. 获取中字符串中字符的个数
2. 对字符串”ababcdabcdefg”使用indexOf(‘a’)和lastIndexOf(‘a’),的运行结果是(B )
A. 1,1
B. 0,6
C. 0,0
D. 1,6
3. 对字符串的说法正确的是( d )
A. 字符串是基本数据类型
B. 字符串值存储在栈内存中
C. 字符串值初始化后可以被改变
D. 字符串值一旦初始化就不会被改变
4. String类charAt()方法作用是 ( A )
A. 返回指定索引处的字符
B. 返回指定索引出的字符串
C. 返回指定字符的索引
D. 返回指定字符串的索引
5. 将字符串转成字符数组的方法是( B )
A. toString()
B. toCharArray()
C. toUpperCase()
D. toLowerCase()
6. StringBuffer字符串缓冲区的初始容量是多少个字符( A )
A. 10个
B. 12个
C. 14个
D. 16个
7. 向字符串缓冲区中追加字符串,使用的方法是( C )
A. length()
B. delete()
C. append()
D. toString()
8. 下面程序运行的结果是( A ) //C ,substring并没有覆盖原来的String
String str = “abcdefg”;
str.substring(0,2);
System.out.println(str);
A. ab
B. abc
C. abcdefg
D. 出现下标越界异常
9. 下面哪个程序的运行结果是true( C )
A. System.out.println(“abc”.equals(“Abc”));
B. System.out.println(“”.equals(null));
C. System.out.println(“abc”==”ab”+”c”);
D. System.out.println(“”.equalsIgnoreCase(null));
10. 关于Integer类中的静态方法parseInt()方法说法正确的是( B )
A. 将小数转换成整数
B. 将数字格式的字符串转成整数
C. parseInt()方法永远不会抛出异常
D. 将单个字符转成整数
11. 将十进制数100转成二进制数用哪个方法( A )
A. toBinaryString()
B. toHexString()
C. intValue()
D. toOctalString()
12. 下面代码运行的结果是( A ) //C,原因暂时不明
Integer x = 3 ;
x = x + 3;
System.out.println(x);
A. 编译失败
B. x3
C. 6
D. Null
13. 单列集合的顶层接口是( B )
A. Map
B. Collection
C. List
D. Set
14. ArrayList类的底层数据结构是( A )
A. 数组结构
B. 链表结构
C. 哈希表结构
D. 红黑树结构
15. LinkedList类的特点是( B )
A. 查询快
B. 增删快
C. 元素不重复
D. 元素自然排序
16. 关于迭代器说法错误的是( D )
A. 迭代器是取出集合元素的方式
B. 迭代器的hasNext()方法返回值是布尔类型
C. List集合有特有迭代器
D. next()方法将返回集合中的上一个元素
17. 下面代码运行的结果是( A )
ArrayList<String> al = new ArrayList<String>();
al.add(true);
al.add(123);
al.add(“abc”);
System.out.println(al);
A. 编译失败
B. [true,123]
C. [true,123,abc];
D. [abc];
18. 将Map集合中的键存储到Set集合的方法是( C )
A. entrySet()
B. get()
C. keySet()
D. put()
19. 存储到TreeSet集合中的对象必须具有( D )
A. 必须实现Comparable接口 //有比较器类实现了即可
B. main方法
C. get和set方法
D. 必须实现Serializable接口(?)
20. 将集合转成数组的方法是( A
A. asList()
B. toCharArray()
C. toArray()
D. copy()
21. 对于增强for循环说法错误的是( A )
A. 增强for循环可以直接遍历Map集合
B. 增强for循环可以操作数组
C. 增强for循环可以操作Collection集合
D. 增强for循环是JDK1.5版本后出现的
22. 对于HashMap集合说法正确的是( B )
A. 底层是数组结构
B. 底层是链表结构
C. 可以存储null值和null键
D. 不可以存储null值和null键
23. DateFormat类中的parse()方法描述正确的是( C )
A. 将毫秒值转成日期对象
B. 格式化日期对象
C. 将字符串转成日期对象
D. 将日期对象转成字符串
24. 下面代码的运行结果是( D )
ArrayList al = new ArrayList();
al.add(“a”);
al.add(“b”);
al.add(“c”);
Iterator it = al.iterator();
while(it.hasNext()){
String s = (String)it.next();
if(s.equals(“c”)){
al.add(“c1”);
}
}
System.out.println(al)
A. [a,b,c]
B. [c1]
C. [a,b,c,c1]
D. 抛出ConcurrentModificationException异常
25. 关于Map.Entry接口说法错误的是( D ) //C
A. 具有getkey()方法
B. 具有getValue()方法
C. 具有keySet()方法 map Setkey
D. 具有setValue( )方法
26. Set集合的特点是( B )
A. 元素有序
B. 元素无序,不存储,重复元素
C. 存储重复元素
D. Set集合都是线程安全的
27. 关于将数组转成集合后,不可以进行的操作是( A )
A. 增加集合中的元素
B. 迭代集合
C. 修改集合中的元素
D. 获取集合中元素的个数
28. 下面代码运行的结果是( B )
ArrayList<String> al = new ArrayList<>();
al.add("s");
al.add("ddd");
al.add("true");
System.out.println(al)
A. 编译失败
B. [s,ddd,true]
C. [true]
D. 运行报错
29. 在Random类中,可以生成100以内正整数的随机数的方法是( C )
A. nextDouble()
B. nextFloat()
C. nextInt(100)
D. nextInt()
30. Date类中,哪个方法可以返回当前日期对象的毫秒值( B )
A. getSeconds()
B. getTime()
C. getDay()
D. getDate()
二、 多选题(每题3分)
多选题少选一项或多选一项,则本题不得分,都选对本题才得分.
31. 下面所有描述String类中equals()方法正确的是( A, B, C )
A. equals()方式是覆盖Object类中的equals()方法
B. equals()比较字符串中的内容,区分大小写
C. equals()方法的的返回值是布尔类型
D. 以上说法都不正确
32. 关于Math.PI说法正确的是( D ) //a
A. 静态常量
B. 被final修饰
C. Math.PI每次运行结果不一样
D. 以上的说法都正确
33. 可以获取当前日期毫秒值的方法是( B ,A ,C,D ) //D不行,DateFormat中没有这个方法
A. Date d = new Date(); d.getTime();
B. System.currentTimeMillis();
C. Calendar中的getTime();
D. DateFormat中的getTime()
34. 关于null和””说法正确的是( A, B,D )
A. null是常量
B. “”是字符串对象
C. null可以调用方法
D. “”可以调用方法
35. String类中的substring()方法描述正确的是( A ,B )
A. 获取字符串中的一部分
B. 返回新的字符串
C. 返回新的字符串数组
D. 此方法没有返回值
36. 下面关于代码String str = new String(“abc”);描述正确的是( b,C )
A. 创建了一个字符串对象
B. 创建了两个对象,一个是new String( )对象,一个是”abc”对象
C. str.equals(“abc”);将返回true
D. str.equals(“abc”);将返回false
37. 关于HashMap集合说法正确的是( A,B, )
A. HashMap集合是双列集合
B. HashMap集合不允许存储重复键
C. HashMap集合不允许存储重复值
D. HashMap集合实现了Collection接口
38. 关于泛型的说法正确的是( A ,B,C )
A. 泛型是JDK1.5出现的新特性
B. 泛型是一种安全机制
C. 使用泛型避免了强制类型转换
D. 使用泛型必须进行强制类型转换
39. List集合的遍历方式有如下哪几种 ( C,A,B, )
A. Iterator迭代器实现
B. 增强for循环实现
C. get()和size()方法结合实现
D. get()和length()方法结合实现
40. String类中split()方法描述正确的是( A,C )
A. 切割字符串
B. 返回一个新的字符串
C. 返回一个新的字符串数组
D. 此方法没有返回值
三、 简答题(每题5分)
1. 集合与数组的区别是什么呢?(5分)
2. 使用三种方式遍历List的集合元素,请写对应的关键代码(for循环,增强for循环、迭代器)(5分 )
展开阅读全文