CoreJava2Answer.docx

上传人:b****6 文档编号:7391114 上传时间:2023-01-23 格式:DOCX 页数:15 大小:17.83KB
下载 相关 举报
CoreJava2Answer.docx_第1页
第1页 / 共15页
CoreJava2Answer.docx_第2页
第2页 / 共15页
CoreJava2Answer.docx_第3页
第3页 / 共15页
CoreJava2Answer.docx_第4页
第4页 / 共15页
CoreJava2Answer.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

CoreJava2Answer.docx

《CoreJava2Answer.docx》由会员分享,可在线阅读,更多相关《CoreJava2Answer.docx(15页珍藏版)》请在冰豆网上搜索。

CoreJava2Answer.docx

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}

...

Listlist3=newArrayList();

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修饰)经过修改并重新编译后。

用到的该常量的其他类也必须重新编译后才能用的新修改后的值

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工作范文 > 演讲主持

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1