这套题目是传智播客javaEE入学测试题,我是在自己学完javaSE之后做的套题,感觉这套题考察的内容很基础,很适合自学javaSE的自测。全套试题有50个选择题,单选和多选都有,每道题2分,80分合格,快来看看你能考多少分吧!
1. 在JAVA中,下列哪些说法是正确的( AC )
A.java源文件的扩展名为.java //正确
B.写好的java源程序可以直接运行 //源程序需要先编译才能运行
C.编写的源程序必须先编译后才能运行 //正确
D.程序员可以读懂扩展名为.class的文件 //class文件为字节码文件,看不懂
2.下列标识符哪个是合法的( BD )
A.class
B.$abc
C.1234
D._name
变量名必须是一个以字母开头的由字母和数字构成的序列。需要注意的是,与大多数程序设计语言相比,java中的字母和数字的范围要大。字母包括‘A’~‘Z’、‘a’~'z'、‘_’、‘$’或在其他某种语言中代表字母的任何Unicode字符。
3.下面哪些赋值语句是正确的?(ABD)
A. long test = 012; //正确
B. float f = -412; //正确
C. int other = (int) true;//布尔型不能强转成整型
D. double d = 0x12345678;//正确,在double的范围内
E. byte b = 128; //错误,-128~127
4.在Java中,下列语句不能通过编译的有( BD)
A. String s= “join”+ 3; //正确,整型可以通过这种方式转换成字符串类型
B. int a= “join”+3;//错误,字符串类型不能这样转换成整型
C. int a= ‘a’+5;//正确,字符型可以转换成整型
D. float f=5+5.5;//错误,5.5的默认类型为double类型,转换成float类型需要进行强转
5.设a = 3,则表达式(--a )< < a的结果为( B )
A. 16
B. 8
C. 24
D. 12
这个题目主要考察的是运算符的优先级和对为运算符的运用。具体的运算过程如下:先计算小括号里面的--a,变成了2<<2,即将0010向左移动2位,变成了1000,即等于8
6.下列代码运行的结果是( C )
public static void main(String[] args) {
int x = 4;
int y = 5;
if(x++>4 & ++y>5) {
x++;
}
System.out.println("x=" + x + ",y=" + y);
}
A. x=4,y=5
B. x=4,y=6
C. x=5,y=6
D. x=6,y=6
此题主要考察的自增运算符的运用。x++,即先用x的值之后再将x+1,++x即先将x+1,然后再进行运算。这个题目还有一点,就是&运算符,&与&&都是位运算符,但两者之间又有区别,读者可以自己去思考一下这个问题
7.尝试运行下面的代码会发生什么?( B )
public class Test {
public static void main(String[] args) {
boolean m = true;
if (m = false) {
System.out.println("true");
} else {
System.out.println("false");
}
}
}
A.输出字符串”true”
B.输出字符串”false”
C.编译时错误
D.运行时错误
此题主要问题在if(m = false),很多人可能选C,觉得 “=” 是赋值符,如果将“=”改成“==”这个题目就选B 了,不然编译不能通过。其实我们忽略了m本身声明时就说boolean型,所以这里可以用“=”对m进行赋值。
8.编译并运行以下代码将发生什么? ( E )
public static void main(String args[]){
char digit = 'a';
for (int i = 0; i < 10; i++){
switch (digit)
{
case 'x' :
{
int j = 0;
System.out.println(j);
}
default :
{
int j = 100;
System.out.println(j);
}
}
}
int i = j;
System.out.println(i);
}
A.输出11次100
B.输出10次100,然后抛出运行期异常
C.编译错误,因为变量i不能在main()方法中被声明2次
D.编译错误,因为变量j不能在main()方法中被声明2次
E.以上都不对
此题是编译无法通过,因为变量j在main()中没有声明,而switch里面的j只能在各自的case里面有效
9. class Demo
{
public static int fun(int c)
{
return c+=2;
}
public static void main(String[] args)
{
int temp = fun(2);