java语言

Java测试题及答案

时间:2024-09-01 16:03:52 java语言 我要投稿

Java测试题及答案

  学习是把知识能力思维方法等转化为你的私有产权的重要手段,是“公有转私”的重要途径。以下是百分网小编整理的Java测试题及答案,欢迎学习!

 Java测试题及答案

  试题1

  指出下面语句没有编译错误的是( )。

  A. long n = 999999999999;

  B.int n = 999999999999L;

  C. long n = 999999999999L;

  D. double n = 999999999999;

  试题2

  完成代码计算10的阶乘并输出,应该填入的代码是( )

  long result = 1;

  for(int i = 2; i <= 10; i++) {

  < 填入代码 >

  }

  System.out.println(”result= ” + result);

  … … …

  A. result = result * i;

  B. result = i*i;

  C. result = i*(i+1);

  D. reslut = i*(i-1);

  试题3

  下列关于数组的声明错误的是

  A.int[] arry = new int[100];

  B. int[3] arry = {1,2,3}

  C. int[] arry = new int[]{1,2,3}

  D. int[][] arry = new int[3][]

  试题4

  实现对数组arry的冒泡排序,应填入的代码是

  public static void bubbleSort(int[] arry) {

  int len = arry.length;

  for (int i = 1; i < len; i++) {

  boolean asc = true;

  < 填入代码 >

  if (asc) return;

  }

  }

  private static void swap(int[] arry, int i, int j) {

  int temp = arry[i];

  arry[i] = arry[j];

  arry[j] = temp;

  }

  A.

  for (int j = len-1; j > i; j–) {

  if (arry[j] < arry[j - 1]) {

  swap(arry, j, j – 1);

  asc = false;

  }

  }

  B.

  for (int j = len – 1; j >= i; j–) {

  if (arry[j] < arry[j - 1]) {

  swap(arry, j, j – 1);

  asc = false;

  }

  }

  C.

  for (int j = len – 1; j >= i; j–) {

  if (arry[j] > arry[j - 1]) {

  swap(arry, j, j – 1);

  asc = false;

  }

  }

  D.

  for (int j = len – 1; j >= i; j–) {

  if (arry[j] < arry[j - 1]) {

  swap(arry, j, j – 1);

  asc = true;

  }

  }

  试题5

  数列1,1,2,3,5,…(从第三项开始每一项是前两项之和)

  下面的代码用于求第100项的值,应填入的代码是

  int n = 100; //项目数

  long n1 = 1, n2 = 1;

  for (int i = 3; i <= n; i++) {

  < 填入代码 >

  }

  System.out.println(n2);

  A. n2 = n1 + n2;

  B. n2 = n1 + n2; n1 = n2;

  C. n2 = n1 – n2; n1 = n2 – n1;

  D. n2 = n1 + n2; n1 = n2 – n1;

  试题6

  语句System.out.println(1+2+”java”+3+4)输出的结果是( C )。

  A. 3java34

  B. 12java34

  C. 3java7

  D. 12java7

  试题7

  下面程序的输出结果是:C

  public static void main(String[] args) {

  int d = 325;

  int sum = 0;

  while (d > 0) {

  int n = d % 10;

  sum += n;

  d /= 10;

  }

  System.out.println(sum);

  }

  A. 10

  B. 12

  C. 5

  D. 32

  试题8

  下面的程序没有编译错误的是:

  A.

  public class Main{

  public static void main(String[] args) {

  byte b1 = 1;

  byte b2 = 2;

  byte b = b1+b2;

  }

  }

  B.

  public class Main{

  public static void main(String[] args) {

  int n;

  for(int i=0;i<10;i++) {

  n +=i;

  }

  }

  }

  C.

  public class Main{

  public static void main(String[] args) {

  int n = 100;

  for(;;) {

  }

  System.out.println(n);

  }

  }

  D.

  public class Main{

  public static void main(String[] args) {

  int n = 100;

  while(n>0);

  System.out.println(n);

  }

  }

  试题9 D

  Java语言中int类型标示整数的最大范围是

  A. -2147483647 ~ 2147483647

  B. -2147483648 ~ 2147483647

  C. -32767~32767

  D. -32768~32767

  试题10 A

  Java语言中字符串“学Java”所占的内存空间是

  A. 6个字节

  B. 7个字节

  C. 10个字节

  D. 11个字节

  试题11

  下面的代码使用二分法在有序的int类型数组arry查找元素key,如果找到输出元素在数组中的下标

  否则输出-1,应该填入的代码是:

  public static void main(String[] args) {

  int key = 16;

  int[] arry = { 1, 3, 5, 7, 8, 10, 12, 15, 16 };

  int low = 0;

  int high = arry.length – 1;

  while (low <= high) {

  < 填入代码 >

  else {

  System.out.println(mid);

  return;

  }

  }

  System.out.println(-1);

  }

  A.

  int mid = (low + high) >>> 1;

  if (arry[mid] > key)

  low = mid + 1;

  else if (arry[mid] < key)

  high = mid – 1;

  B.

  int mid = (low + high) >>> 1;

  if (arry[mid] < key)

  low = mid;

  else if (arry[mid] > key)

  high = mid – 1;

  C.

  int mid = (low + high) >>> 1;

  if (arry[mid] < key)

  low = mid + 1;

  else if (arry[mid] > key)

  high = mid;

  D.

  int mid = (low + high) >>> 1;

  if (arry[mid] < key)

  low = mid + 1;

  else if (arry[mid] > key)

  high = mid – 1;

  试题12

  下面的代码试图从26个小写字母中随机抽取5个不重复的字母,并输出到控制台。

  其中random(int n)方法用于返回大于等于0且小于n的随机整数。应填入的代码是:

  public static void main(String[] args) {

  int num = 10;

  char[] ch = { ‘a’, ‘b’, ‘c’, ‘d’, ‘e’, ‘f’, ‘g’, ‘h’, ‘i’, ‘j’, ‘k’,

  ‘l’, ‘m’, ‘n’, ‘o’, ‘p’, ‘q’, ‘r’, ’s’, ‘t’, ‘u’, ‘v’, ‘w’,

  ‘x’, ‘y’, ‘z’ };

  int len = ch.length;

  char[] result = new char[num]; // 用于存放抽取结果

  boolean[] flags = new boolean[len];

  < 填入代码 >

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

  System.out.print(result[i]+” “);

  }

  }

  public static int random(int n) {

  Random r = new Random();

  return r.nextInt(n);

  }

  A.

  for (int i = 0; i < num; i++) {

  int r;

  do {

  r = random(len);

  } while (!flags[r]);

  result[i] = ch[r];

  flags[i] = false;

  }

  B.

  for (int i = 0; i < num; i++) {

  int r;

  do {

  r = random(len);

  } while (!flags[r]);

  result[i] = ch[r];

  flags[r] = true;

  }

  C.

  for (int i = 0; i < num; i++) {

  int r;

  do {

  r = random(len);

  } while (flags[r]);

  result[i] = ch[r];

  flags[r] = true;

  }

  D.

  for (int i = 0; i < num; i++) {

  int r;

  do {

  r = random(len);

  } while (!flags[r]);

  result[i] = ch[r];

  flags[r] = true;

  }

  试题13

  对JDK描述错误的是 C

  A. 运行Java程序只要有JRE环境就可以,不一定需要全部JDK的功能

  B. JDK中包括JVM、核心类库、Java开发工具(java,javac)等

  C. JDK本身也是平台无关的,不同的操作系统安装的JDK是一样的

  D. JDK的全称是 Java Development Kit

  试题14

  对CLASSPATH描述正确的是 D

  A. 设置CLASSPATH用于指示操作系统找到JDK命令,如java或javac

  B. CLASSPATH设置不对,可能会导致java命令失败,但不会导致javac失败

  C. CLASSPATH的设置中可以包含目录路径但不可以包含文件路径

  D. java命令可以通过 -cp 参数指定类路径

  试题15

  下面代码的输出结果是 b

  public class Main {

  public static void main(String[] args) {

  int n1 = 1;

  int n2 = 2;

  n1 = n1 + n2; 3

  n2 = n1 – n2; 1

  n1 = n1 – n2; 2

  System.out.println(n1 + “,” + n2);

  }

  }

  A. 1,2

  B. 2,1

  C.1,3

  D. 3,2

  试题16

  下面代码的输出结果是 C

  public class Main {

  public static void main(String[] args) {

  int n = 100;

  int m = 200;

  System.out.println(f(n,m));

  System.out.println(n);

  }

  public static int f(int m, int n) {

  n = m+n;

  return n;

  }

  }

  A. 300

  300

  B.

  100

  100

  C.

  300

  100

  D.

  100

  300

  试题17

  下面关于Java语言中方法的说法错误的是 :D

  A. 方法调用时参数类型必须符合方法的定义

  B. 参数传递是值传递的方式

  C. 如果方法没有返回值必须声明返回为void

  D. 如果方法定义为返回void,则方法中不能出现return语句

  试题18

  下面不属于Java语言特点的是:C

  A. 平台无关

  B. 面向对象

  C. 支持指针类型

  D. 垃圾回收机制

  试题19

  下面代码的输出结果是 B

  double money = 3.0;

  money -= 2.9;

  System.out.println(money==0.1);

  A. 0.1

  B. 0.10000000000000009

  C. 0.099

  D. 0

  试题20

  关于数组的说法正确的是 D

  A. 数组类型属于基本类型

  B. 数组创建后,其的长度可以改变

  C. int[]类型的变量可以直接赋值给long[]类型的变量

  D. 数组的长度必须在创建是指定

【 Java测试题及答案】相关文章:

计算机二级Java测试题及答案03-18

2017计算机二级JAVA预测试题及答案03-27

2017计算机二级《Java》预测试题及答案03-28

全国计算机二级考试java测试题与答案11-23

Java语言基础试题及答案12-04

2017计算机二级考试《JAVA》备考测试题「带答案」03-23

Java基础笔试题及答案03-26

2017年Java考试预习测试题03-30

Photoshop测试题及答案06-03