该填入的代码是( )。
A.
if (j >= list2.size() || i > list1.size()
&& list1.get(i) < list2.get(j)) {
list3.add(list1.get(i++));
} else {
list3.add(list2.get(j++));
}
B.
if (j >= list2.size() || i < list1.size()
&& list1.get(i) < list2.get(j)) {
list3.add(list1.get(i++));
} else {
list3.add(list2.get(j++));
}
C.
if (j >= list2.size() || i < list1.size()
&& list1.get(i) > list2.get(j)) {
list3.add(list1.get(i++));
} else {
list3.add(list2.get(j++));
}
D.
if (j >= list2.size() || i < list1.size()
|| list1.get(i) < list2.get(j)) {
list3.add(list1.get(i++));
} else {
list3.add(list2.get(j++));
}
试题11
运行如下代码:
String ss = "abcdefcde";
int i = ss.indexOf("cde", 3);
System.out.println(i);
控制台输出的结果是( )。
A. 6
B. 3
C. 2
D. 7
试题12
运行如下代码:
String ss = "abcdefcde";
char cc = ss.charAt(3);
System.out.println(cc);
控制台输出的结果是( )。
A. b
B. e
C. c
D. d
试题13
运行如下代码:
String ss = "abcdefcde";
String s = ss.substring(2, 4);
System.out.println(s);
控制台输出的结果是( )。
A. cdef
B. cd
C. cde
D. bcde
试题14
下面说法正确的是
A. 一个接口可以继承另外一个接口
B. 一个类只能实现一个接口
C. Java语言支持多继承
D. 抽象类中的非抽象方法不可以调用其抽象方法
试题15
下面的代码用于输出字符数组ch中字符出现的种类和个数,应该填入的代码是()。
public static void main(String[] args) {
char[] ch = { 'a', 'c', 'a', 'b', 'c', 'b' };
HashMap map = new HashMap();
for (int i = 0; i < ch.length; i++) {
< 填入代码 >
}
System.out.println(map);
}
A.
if (map.contains(ch[i])) {
map.put(ch[i], map.get(ch[i]) + 1);
} else {
map.put(ch[i], 1);
}
B.
if (map.contains(ch[i])) {
map.put(ch[i], (Integer) map.get(ch[i]) + 1);
} else {
map.put(ch[i], 1);
}
C.
if (map.containsKey(ch[i])) {
map.put(ch[i], (int) map.get(ch[i]) + 1);
} else {
map.put(ch[i], 1);
}
D.
if (map.containsKey(ch[i])) {
map.put(ch[i], (Integer) map.get(ch[i]) + 1);
} else {
map.put(ch[i], 1);
}
试题16
关于String和StringBuffer对象描述,错误的是
A. StringBuffer是可变对象,而String是不可变对象
B. 对字符串进行删除、插入等可变操作时一般使用StringBuffer
C. String对象池的作用在于提升效率
D. StringBuffer的append方法将返回一个全新的StringBuffer对象
试题17
已知静态方法random(int n)用于返回大于等于0且小于n的随机整数。
利用此函数实现对ArrayList的“洗牌”操作。所谓“洗牌”操作,
即将ArrayList元素的位置随机打乱,使得ArrayList的每个元素的位置
在除原位置外的其他随机位置上。
应该填入的代码是
public class shuffleUtils {
public static void shuffle(ArrayList list) {
< 填入的代码 >
}
public static int random (int n) {
… … …
}
}
A.
for (int i = list.size(); i > 1; i–) {
int j = random(i);
list.set(j,list.get(i-1));
}
B.
for (int i = list.size(); i > 1; i–) {
int j = random(i);
list.set(i-1, list.set(j,list.get(i-1));
}
C.
for (int i = list.size(); i > 1; i–) {
int j = random(i);
list.set(i-1,list.get(j));
}
D.
for (int i = list.size(); i > 1; i–) {
int j = random(i);
list.set(i, list.set(j,list.get(i));
}
试题18
ArrayList的初始化内容如下:
ArrayList list = new ArrayList();
list.add(“java”);
list.add(“aaa”);
list.add(“java”);
list.add(“java”);
list.add(“bbb”);
下面可以删除list中所有的“java”的代码是:
A.
for (int i = list.size() – 1; i >= 0; i–) {
if (“java”.equals(list.get(i))) {
list.remove(i);
}
}
B.
for (int i = 0; i < list.size() – 1; i++) {
if (“java”.equals(list.get(i))) {
list.remove(i);
}
}
C.
list.remove(“java”);
D.
list.removeAll(“java”);
试题19
下面字符串和正则表达式 [JQK]{2}[a-z0-9]+ 匹配的字符串是
A. JQ
B. JKK
C. QQ001
D. Q123abc
试题20
下面描述正确的是:
A. str是字符串变量,“java”.equals(str) 和 str.equlas(“java”)在任何时候都是等价的
B. 成员访问修饰符按照可访问的范围由大到小的顺序是 public default protected private
C. abstract 和 final 共同修饰一个类时,final应该放在abstract 的前面
D. 当某一个类的int类型常量值(用static final修饰)经过修改并重新编译后。用到的该常量的其他类也必须重新编译后才能用的新修改后的值