当前位置:网站首页 > Java基础 > 正文

java基础考试代码题



一、 单选题

1. 下列关于方法定义说法错误的( )

A、定义在类中方法外面

B、返回值类型,必须要和 return 语句返回的类型相同,否则编译失败 。

C、必须是 public 类型的

D、不能在 return 后面写代码, return 意味着方法结束,所有后面的代码永远不会执行,属于无效代码。

解析:C 类中方法外没问题方法内嵌套,方法外离谱 其他都没啥问题

2. 有如下程序段:

则表达式 a == b s == s2 的结果分别是:( )。

A、true 与 true

B、false 与 true

C、true 与 false

D、false 与 false

解析:B 做过不解释 但是强调下a++ 加上去了,a为6 b还是5

3. 根据以下的代码得出的 a、b、c 和 d 的值为?

A: 5,4,5,5

B: 6,5,6,5

C: 6,4,6,4

D: 6,4,6,5

解析: D b为4 a为6 d为5 c为6

4. ArrayList 的初始化内容如下:

下面可以删除 list 集合中所有的”b”的代码是()

A、 for (int i = 0; i < list.size (); i++) {

if (list.get (i).equals ("b")) { list.remove (i); } }

B、 for (int i = list.size ()-1; i > 0; i--) {

if (list.get (i).equals ("b")) { list.remove (i); } }

C、list.remove ("b");

D、以上的代码都不能成功删除 list 集合中所有的”b”;

解析:B 做过不解释 但是吧集合删除有个坑如果正序容易漏记得i--,或者倒序删除

5. 以下关于构造方法说法错误的是?()

A、方法名与类名相同

B、如果你提供了构造方法,系统还会提供默认构造方法

C、没有返回值类型,连 void 都没有

D、没有具体的返回值

解析:B 自己重载构造方法默认的无参就没了 需要自己写 一般就都写了就行了反正都是快捷键

6. 下面的代码执行完 x 的值是()

A、35

B、36

C、34

D、16

解析: A 穿透 这里我说个东西就是default在最开始如果没有匹配到会一直穿透到底

7. 下列 test 类中的变量 r 的最后结果为

A、31

B、30

C、28

D、29

解析:A 做过不解析 简单题 ++在前就先加就完事了,除非单独一句.

8. 以下哪两个基本数据类型占 4 个字节()

A、long,double

B、short,int

C、int,float

D、long,char

解析:C 记住就行了 short2 int4 long8 float4 double8 个字节

9.以下代码反转字符串逻辑正确的是( )

A :

String s = "12345";

for (int i = s.length(); i >= 0; i--) {

s+= s.charAt(i); }

System.out.println(s);

B :

String s = "12345";

for (int i = s.length()-1; i >= 0; i--) {

s+= s.charAt(i); }

System.out.println(s);

C :

String s = "12345" java基础考试代码题;

String s2 = "";

for (int i = s.length()-1; i >= 0; i--) {

s2+= s.charAt(i);}

s = s2;

System.out.println(s);

D :

String s = "12345";

String s2 = "";

for (int i = 0; i < s.length(); i++) {

s2+= s.charAt(i); }

s = s2;

System.out.println(s);

解析:C 简单题

10. 下面变量名定义正确的是()

A、final

B、1var1

C、_var2

D、var3&

解析:C 简单题

二、 多选题(每题 4 分,共计 28 分;得分____)

11. 给定如下 java 代码,编译运行时,以下哪个语句的值为 true()

A、s.equals(t);

B、 t.equals(c);

C、t.equals(e);

D、 t==c;

解析:AC 比较的是两字符串的内容是否相同

12. 以下表达式结果为 True 的有( )

A、

int a=8;

byte b=8;

System.out.println(a==b);

B、int a=97;

char b='a';

System.out.println(a==b);

C、

int a=10;

long b=10;

System.out.println(a==b);

D、

short a=127;

long b=127;

System.out.println(a==b);

解析:ABCD 基本数据类型比较自动类型转换ACD没问题 B在参与运算char会转为int字符aASCII码是97所以相同.

13. 以下选项中不能获取到下图所示字符串(包含空格)的有()

A、

Scanner sc = new Scanner(System.in);

System.out.println("请输入一个字符串:");

String x = sc.next ();

B、

Scanner sc = new Scanner(System.in);

System.out.println("请输入一个字符串:");

String x = sc.nextInt ();

C、

Scanner sc = new Scanner(System.in);

System.out.println("请输入一个字符串:");

String x = sc.nextLine();

D、

Scanner sc = new Scanner(System.in);

System.out.println("请输入一个字符串:");

String x = sc.nextDouble ();

解析:A(X)BD 唯有nextLine不行,因为除了回车谁也不能让他停下接收,答案A可以接收

14. 现有 Animal 类 属性有 name 和 age,下列选项中属于它的构造方法的有( )

A.

public Animal() { }

B.

public Animals() { }

C.

public Animal(String name, int age) { this.name = name; this.age = age; }

D.

public void Animal(String name, int age) { this.name = name; this.age = age; }

解析:AC 构造方法没有返回值连void都没 同类名

15. 若只能修改一处,想要输出结果为 0,可以对哪一步进行修改( )

public static void main(String[] args) {

int [ ] arr = new int[1];

arr[0] = 3;

System.out.println( arr[1] );

}

A、②处修改为 arr[3] = 0;

B、③处修改为 System.out.println(arr[0]-3) ;

C、①处修改为 int [ ] arr = new int[2];

D、②处修改为 arr[1] = 0;

解析: BC A就没那么大边界 B优秀直接干为0 C再加一个默认值为0 D没有空间

16. 下列关于形参、实参说法正确的是()

A、形参是指在方法定义时的参数

B、实参是指在方法调用时的参数

C、方法调用时,形参实参之间的个数,顺序,类型不一定都需要一致

D、方法调用时,形参实参之间的个数,顺序,类型都需要一致

解析:ABD 解析 简单不解释

17.下面关于 String 的描述不正确的是()

A、toCharArray()是将此字符串转换成新的字符数组

B、equals()方法比较的是两个字符串的地址和内容

C、charAt()返回的是指定的索引处的 char 值

D、length 属性代表的是字符串的长度

解析:BD 字符串没有length属性,B的话对于我有点迷惑在我看到源码后确定是要比较地址但是,分装给我们使用就是比较值了.

三、 代码题(共计 42 分;得分____)

18.本题本质为代码分析题,下载试题附件(需要分析的代码图片),代码图片中共有 5

错误,红框标出的代码中存在错误,请找出具体的错误并给出修改方案。

答案格式要求如下:

错误代码的行号,正确代码;

解析:

11,while (i<=5){ //因为i的值为1 要5个也就是1-5 a.length连循环体都进不去 这个较难想

15,int num=scanner.nextInt(); //这个简单

20,i++; //这个必须要加要不死循环了

27,int nextInt = random.nextInt(10)+1; //1-10 范围为[x,y]就要 (y-x+1)+1

31,if(arr[j]%nextInt==0){ //取余写成除了

19.本题本质为代码填空

 

放入程序中运行通即为正确,此题较为简单.懒得解析了.直接放答案.

 

20.【代码题】

定义返回值类型为 int 类型,名为 getScore(int[] arr)的静态方法,方法内完成:获取指定数

arr 中大于平均值的元素的个数,并返回。

定义 main 方法,方法内完成:

1.定义一个长度为 5 int 数组 arr

2.使用随机数生成 5 个范围为 1-99 的数字存入 arr 中(包含 1 99),之后打印数组

3.传递 arr 调用 getScore(int[] arr)方法,获取方法返回值并在控制台打印输出该返回值

 

版权声明


相关文章:

  • java基础和数据分析pdf2024-11-01 13:10:02
  • java基础推荐网课2024-11-01 13:10:02
  • java中基础api都有哪些2024-11-01 13:10:02
  • AI技术需要java基础吗2024-11-01 13:10:02
  • java基础开发面试2024-11-01 13:10:02
  • 从java基础成神2024-11-01 13:10:02
  • 尚硅谷宋红康Java基础ppt2024-11-01 13:10:02
  • java基础教程字符串2024-11-01 13:10:02
  • java从基础到入门2024-11-01 13:10:02
  • 千锋java基础教程2024-11-01 13:10:02