intellij idea汉化 人工智能 meteor Semantic UI hadoop入门书籍 java常用的包 java解析pdf bootstrap居中对齐 flutter项目案例 python安装教程 python中的range函数 python用什么ide python函数返回 java教程 java教学 java重写和重载 java集合类 离散数学及其应用 电脑密码查看器 管理文件 华为下拉开关设置 苹果x银色 xflow python图片处理 编程之家 backtrack4 cad文件 adb安装 x怎么截图 mapinfo下载 environment 如何加入工作组 ps制作动画 方正正准黑简体 故事板软件 97大门出招表 东方通达信 遍历list集合 怎么打包文件发给别人 excel单元格大小
当前位置: 首页 > 学习教程  > 编程语言

JAVA基础试题 -01

2020/9/19 15:32:49 文章标签:

1、下列哪种不属于java的基本数据类型
A int
B float
C String
D char

答案:C 
解析:String 是引用类型

2、设x = 5, 则 y = x++ 和 y = ++x 的结果, y的值分别是
A 5, 5
B 5, 6
C 6, 5
D 6, 6

答案: B
解析:++ 在前表示先计算后赋值, ++ 在后表示先赋值后计算

3、以下标识符中哪项是合法的
A @name
B %name
C _name
D 0name

 答案:C
 解析:标识符只能由数字 0-9、字母、_ 和 $ 符号组成,而且不能以数字开头,也不能与关键字和保留字同名

4、以下不是JRE的主要功能是?
A 加载代码
B 校验代码
C 开发代码
D 执行代码

答案:C
解析:JRE 是 java 运行时环境,主要功能不是开发代码,而是加载、校验和运行代码

5、在Hello.java文件中有如下代码:

class Demo01
{
	public static void main(String[] args) 
  	{
		System.out.println("Hello World!");
   	}
}
class Demo02
{

}

在命令行执行javac Hello.java后,编译生成的class文件是
A Hello.class
B Demo01.class
C Demo02.class
D Demo01.class、Demo02.class

答案:D
解析:每一个类都会生成一个字节码文件,而不管类中是否为空

6、下面代码的输出结果是什么?

class Test {
    public static void main(String[] args) {
        int a = 3, b = 4;
        int result = (++a)/3+(b--)*2-(a--)%6+(b++)*3-(b--);
        System.out.println("result=" + result + ", a=" + a + ", b=" + b);
    }
}

A result=11, a=3, b=3
B result=10, a=3, b=4
C result=11, a=4, b=3
D result=10, a=3, b=3

答案:D
解析:++ 或者 -- 在前,表示先运算再赋值;++ 或者 -- 在后表示先赋值再运算

7、Java 的跨平台机制是由什么实现的
A GC
B Java DE
C Html
D JVM

答案:D
解析:JVM是 java 虚拟机。java 之所以可以实现跨平台是因为有不同版本的 JVM 针对不同的操作系统

8、下面语句的输出结果是

class Test
{
 public static void main(String[] args) 
 {
  int x = 4;  
  System.out.println ("value is "+((x>4) ? 99.9 : 9));
 }
}

A 输出结果为:value is 99.9
B 输出结果为:value is 9
C 输出结果为:value is 9.0
D 输出结果为:语法错误

答案:C
解析:因为三目运算符中有 double 类型的数据,这时候 java 内部自动将 int 类型的转换成 double 类型。

9、整型数据类型中,需要内存空间最少的是
A short
B long
C int
D byte

答案:D
解析:byte 占 1 个字节,short 占 2 个字节,int 占 4 个字节,long 占 8 个字节

10、下列代码执行的结果是

public static void main(String[] args) 
    {
        short s1 = 1;
        s1 = s1 + 1;
        System.out.println(s1);
    }

A 编译异常 无法运行
B 2
C 1
D Null

答案:A
解析:因为 s1 是 short 类型的,而 1 默认是 int 类型,这时候是高级类型向低级类型,需要手动强制转换。

11、下列程序段执行后,t5 的结果是:

int t1=5,t2=6,t3=7,t4,t5;
t4=t1

A 4
B 6
C 5
D 7

答案:C
解析:t4 = t1 是将 t1 的值赋给 t4 ,所以 t4 的值就为5

12、设x为int型变量,则执行以下语句段后,x的值为:

x=10;
x+=x-=x-x;

A 30
B 10
C 20
D 40

答案:C
解析:= 是赋值运算符,所以从后面开始算,然后把后面的值赋给前面的变量

13、分析如下Java程序段,程序编译运行结果是( )。

public class A {
      public static void main(String[] args) {
            int num=0;
            switch(num){
                   default:
                   	System.out.println("Default");
                        num++;
                   case 1:
                        System.out.println("num="+ num);
                        num+=2;
                   case 2:
                        System.out.println("num=" + ++num);
                        break;
                   case 3:
                        System.out.println("num="+ ++num);
                        break;
          }
    }
}

A 输出:Default; num=1 ; num=3
B 输出:Default
C 输出:Default ; num=1 ; num=4
D 程序编译出错

答案:C
解析:switch 具有穿透性。也就是说当与第一个 case 后面的值匹配之后若是没有碰到 break 或者右大括号 }  ,那么就不再与下面的 case 匹配,而直接执行后面剩下的代码,直到碰到 break 或者右大括号 }。

14、下面哪一个操作符的优先级最高
A &&
B ||
C !
D ()

答案:D
解析:()的优先级最高,其次是 !、&、|

15、关于循环说法错误的是
A while 循环是先判断条件表达式是否为 true,如果为 true,则执行循环体
B do-while 则是先循环后判断,do-while 至少会循环一次
C for()括号中的分号可以一个也不要
D for 循环也是先判断再循环

答案:C
解析:for() 中的表达式可以省略,但是一个分号都不能省略

16、给出以下代码,请问该程序运行的结果是什么?

public class Check{ 
    public static void main(String args[]){ 
        byte b=10; 
        byte c=15; 
        b=(byte)(b^c); 
        System.out.println(“b contains+b); 
    } 
}

A 打印输出b contains10
B 打印输出b contains 5
C 打印输出b contains 250
D 打印输出b contains 245

答案:B
解析:b 和 c 进行位与运算后,强转回 byte 类型。这里需要使用二进制进行计算

17、下面代码的输出结果是()

   class Test 
   {
    	public static void main(String[]  args) 
    	{
     		int[] arr = {1, 3, 2, 5, 4};
     		change(arr);
     		print(arr);
    	}
    	public static void change(int[] arr)
    	{
     		for (int i = 0; i < arr.length -  1; i++){
      			for (int j = i + 1; j <  arr.length; j++){
       				if (arr[i] > arr[j]){
        				int temp = arr[j];
        				arr[j] = arr[i];
        				arr[i] = temp;
       				}
     	 		}
     		}
    	}
    	public static void print(int[]  arr)
    	{
     		for (int i = 0; i < arr.length;  i++){
      			System.out.print(arr[i] +  ",");
     		}
    	}
   }

A 1,2,3,4,5
B 5,4,3,2,1
C 1,3,4,2,4
D 1,2,3,4,5

答案:D
解析:for()循环的嵌套,要逐层进行。

18、下面代码的输出结果是什么?

class Test {
     public static void main(String[] args) {
         int a = 3;
         int b = 4;
         if ((a>b&(a++)>b&&(--b)<a)|(b++)<=(a--)) {
              System.out.println("判断结果为true, a=" + a + ",b=" + b);
         } else {		
	      System.out.println("判断结果为false, a=" + a + ",b=" + b);
                }
      }
}

A 判断结果为true, a=3,b=5
B 判断结果为true, a=3,b=4
C 判断结果为false, a=3,b=5
D 判断结果为false, a=4,b=4

答案:A
解析:++ 在前表示先计算后赋值, ++ 在后表示先赋值后计算

19.下面代码的输出结果是什么?

class Test {    
	public static void main(String args[]) {        	
		int x = 9;        
		for (; x > 0; x--) {            
			if (x % 3 == 0) {                
				System.out.println(--x);                
				continue;            
			}  
		} 
	}
}

A 9、3、6
B 9、6、3
C 8、5、2
D 7、4、1

正确答案: C
解析:注意每次循环的时候x值得变化  

20.下面代码的输出结果是什么?

class Test {    
	public static void main(String args[]) {        
		int i = 1, j = 10;        
		do {            
			if (i++ > --j)
				 continue;
		} while (i < 5);       
		System.out.println(i);        
		System.out.println(j);    
	}
}

A 4、5
B 5、6
C 6、7
D 7、8

正确答案: B
解析:注意循环了多少次

本文链接: http://www.dtmao.cc/news_show_200271.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?