CoreJava2Answer.docx
- 文档编号:7391114
- 上传时间:2023-01-23
- 格式:DOCX
- 页数:15
- 大小:17.83KB
CoreJava2Answer.docx
《CoreJava2Answer.docx》由会员分享,可在线阅读,更多相关《CoreJava2Answer.docx(15页珍藏版)》请在冰豆网上搜索。
CoreJava2Answer
试题类型:
单选题
试题1
已知变量a和obj的定义如下:
Object[]a1={"a","b","c"};
Objectobj=a1;
则下面语句运行时会抛出异常的是(C)。
A:
Object[]a2=(Object[])obj;
B:
Stringstr1=(String)((Object[])obj)[1]
C:
String[]a3=(String[])obj
D:
Stringstr2=(String)a1[2]
试题2
已知类Foo的定义如下:
publicclassFoo{
intvalue;
Foo(intvalue){
this.value=value;
}
}
运行下面程序段:
Foo[]a1={newFoo
(1),newFoo
(2),newFoo(3)};
Foo[]a2=newFoo[a1.length];
System.arraycopy(a1,0,a2,0,a1.length);
System.out.println((a1==a2)+","+(a1[1]==a2[1]));
控制台输出的结果是(A)。
A:
false,true
B:
false,false
C:
true,true
D:
true,false
试题3
已知类Foo的定义如下:
publicclassFoo{
intvalue;
Foo(intvalue){
this.value=value;
}
publicbooleanequals(Objectobj){
if(objinstanceofFoo){
Foofoo=(Foo)obj;
returnvalue==foo.value;
}else{
returnfalse;
}
}
运行下面程序段:
ArrayListlist=newArrayList();
HashSetset=newHashSet();
list.add(newFoo
(1));
set.add(newFoo
(1));
System.out.println(list.contains(newFoo
(1))+","
+set.contains(newFoo
(1)));
控制台输出的结果是(A)。
A:
true,false
B:
true,true
C:
false,false
D:
false,true
试题4
已知类A、B、C和接口D的定义如下:
publicclassA{…}
publicclassBextendsAimplementsD{…}
publicclassCextendsA{…}
publicinterfaceD{…}
变量a、b、c、d的定义如下:
Aa=newA();Bb=newB();
Cc=newC();Dd=null;
则下列语句会有编译错误的是(D)。
A:
a=b;
B:
d=b;
C:
d=(D)a;
D:
c=(C)b;
试题5
运行如下代码:
classCOne{
publicvoidf(){
System.out.println("COne.f");
}
}
classCTwoextendsCOne{
publicvoidf(){
System.out.println("CTwo.f");
}
}
classCThree{
publicvoidg(COneone){
System.out.println("g(Cone)");
one.f();
}
publicvoidg(CTwotwo){
System.out.println("g(Ctwo)");
two.f();
}
}
publicclassMain{
publicstaticvoidmain(String[]args){
COneone=newCTwo();
CThreethree=newCThree();
three.g(one);
}
}
控制台输出的结果是(A)。
A:
g(Cone)
CTwo.f
B:
g(Cone)
COne.f
C:
g(Ctwo)
CTwo.f
D:
g(Ctwo)
COne.f
试题6
运行如下代码
classFoo{
privateintvalue=5;
publicFoo(){
System.out.println("Foo()");
System.out.println(value);
}
}
classBarextendsFoo{
privateintvalue=10;
publicBar(){
System.out.println("Bar()");
System.out.println(value);
}
}
publicclassMain{
publicstaticvoidmain(String[]args){
Barbar=newBar();
}
}
控制台输出的结果是(B)。
A:
Bar()
10
Foo()
5
B:
Foo()
5
Bar()
10
C:
Bar()
5
Foo()
10
D:
Foo()
10
Bar()
5
试题7
实现Point类的equals方法,具体逻辑为:
“成员变量x和y分别相等的Point对象被视为相等”。
publicclassPoint{
privateintx;
privateinty;
...
publicbooleanequals(Objectobj){
<填入代码>
}
}
以下代码正确的是(D)。
A:
if(obj.x==this.x||obj.y==this.y){
returntrue;
}
returnfalse;
B:
if(obj.x==this.x&&obj.y==this.y){
returntrue;
}
returnfalse;
C:
if(!
(objinstanceofPoint))returnfalse;
if(((Point)obj).x==((Point)obj).y&&this.x==this.y){
returntrue;
}
returnfalse;
D:
if(!
(objinstanceofPoint))returnfalse;
if(((Point)obj).x==this.x&&((Point)obj).y==this.y){
returntrue;
}
returnfalse;
试题8
运行如下代码:
Listlist=newArrayList();
//向list中插入内容{1,2,3,4,5,6}
list.set(2,list.set(5,list.get
(2)))
System.out.println(list);
控制台的输出结果是(C)。
A:
[1,2,5,4,5,2]
B:
[1,5,3,4,2,6]
C:
[1,2,6,4,5,3]
D:
[1,2,3,4,5,3]
试题9
运行如下代码:
Listlist=newArrayList();
//向list中插入内容{1,2,3,4,5,6}
……
list.subList(2,5).clear();
System.out.println(list);
控制台的输出结果是(D)。
A:
[1,2,3,6]
B:
[1,2]
C:
[1,2,3]
D:
[1,2,6]
试题10
题示代码的功能为:
将两个有序的ArrayList合并为一个有序的ArrayList。
对于两个存放Integer对象的ArrayList,
内容分别为:
list1:
{1,3,4,6,8}和list2:
{2,5,9}
合并后的list3:
{1,2,3,4,5,6,8,9}
...
List
intsize=list1.size()+list2.size();
for(inti=0,j=0,k=0;k if(j>=list2.size()||i &&list1.get(i) if([j>=list2.size()&&list1.get(i) &&list1.get(i) list3.add(list1.get(i++)); }else{ list3.add(list2.get(j++)); } System.out.println(list3); ...} 完成该功能应该填入的代码是(B)。 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.get(i) list3.add(list1.get(i++)); }else{ list3.add(list2.get(j++)); } C: if(j>=list2.size()&&i &&list1.get(i) list3.add(list1.get(i++)); }else{ list3.add(list2.get(j++)); } D: if(j>=list2.size()||i ||list1.get(i) list3.add(list1.get(i++)); }else{ list3.add(list2.get(j++)); } 试题11 运行如下代码: Stringss="abcdefcde"; inti=ss.indexOf("cde",3); System.out.println(i); 控制台输出的结果是(A)。 A: 6 B: 3 C: 2 D: 7 试题12 运行如下代码: Stringss="abcdefcde"; charcc=ss.charAt(3); System.out.println(cc); 控制台输出的结果是(D)。 A: b B: e C: c D: d 试题13 运行如下代码: Stringss="abcdefcde"; Strings=ss.substring(2,4); System.out.println(s); 控制台输出的结果是(B)。 A: cdef B: cd C: cde D: bcde 试题14 下面说法正确的是A A: 一个接口可以继承另外一个接口 B: 一个类只能实现一个接口 C: Java语言支持多继承 D: 抽象类中的非抽象方法不可以调用其抽象方法 试题15 下面的代码用于输出字符数组ch中字符出现的种类和个数,应该填入的代码是(D)。 publicstaticvoidmain(String[]args){ char[]ch={'a','c','a','b','c','b'}; HashMapmap=newHashMap(); for(inti=0;i <填入代码> if(map.containsKey(ch[i])){ map.put(ch[i],(Integer)map.get(ch[i])+1); }else{ map.put(ch[i],1); } } 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对象描述,错误的是D A: StringBuffer是可变对象,而String是不可变对象 B: 对字符串进行删除、插入等可变操作时一般使用StringBuffer C: String对象池的作用在于提升效率 D: StringBuffer的append方法将返回一个全新的StringBuffer对象 试题17 已知静态方法random(intn)用于返回大于等于0且小于n的随机整数。 利用此函数实现对ArrayList的“洗牌”操作。 所谓“洗牌”操作, 即将ArrayList元素的位置随机打乱,使得ArrayList的每个元素的位置 在除原位置外的其他随机位置上。 应该填入的代码是B publicclassshuffleUtils{ publicstaticvoidshuffle(ArrayListlist){ <填入的代码>for(inti=list.size();i>1;i--){ intj=random(i); list.set(i-1,list.set(j,list.get(i-1)); } } publicstaticintrandom(intn){ ……… } } A: for(inti=list.size();i>1;i--){ intj=random(i); list.set(j,list.get(i-1)); } B: for(inti=list.size();i>1;i--){ intj=random(i); list.set(i-1,list.set(j,list.get(i-1)); } C: for(inti=list.size();i>1;i--){ intj=random(i); list.set(i-1,list.get(j)); } D: for(inti=list.size();i>1;i--){ intj=random(i); list.set(i,list.set(j,list.get(i)); } 试题18 ArrayList的初始化内容如下: ArrayListlist=newArrayList(); list.add("java"); list.add("aaa"); list.add("java"); list.add("java"); list.add("bbb"); 下面可以删除list中所有的“java”的代码是: A A: for(inti=list.size()-1;i>=0;i--){ if("java".equals(list.get(i))){ list.remove(i); } } B: for(inti=0;i if("java".equals(list.get(i))){ list.remove(i); } } C: list.remove("java"); D: list.removeAll("java"); 试题19 下面字符串和正则表达式[JQK]{2}[a-z0-9]+匹配的字符串是C A: JQ B: JKK C: QQ001 D: Q123abc 试题20 下面描述正确的是: D A: str是字符串变量,“java”.equals(str)和Stringstr;str.equlas("java")在任何时候都是等价的 B: 成员访问修饰符按照可访问的范围由大到小的顺序是publicdefaultprotectedprivate C: abstract和final共同修饰一个类时,final应该放在abstract的前面 D: 当某一个类的int类型常量值(用staticfinal修饰)经过修改并重新编译后。 用到的该常量的其他类也必须重新编译后才能用的新修改后的值
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- CoreJava2Answer
![提示](https://static.bdocx.com/images/bang_tan.gif)