第一题
public class Qus1 {
public static void main(String[] args) {
Qus1 inc = new Qus1();
int i = 0;
inc.fermin(i);
i = i++;
System.out.println(i);
}
void fermin(int i) {
i++;
}
}
A.Compile time error(编译错误)
B.Output of 2(输出为2)
C.Output of 1(输出为1)
D.Output of 0(输出为0)
解析:fermin(int i)函数是一个 void (无返回值)的类型。所以i++的结果虽然变成1,但并不返回。主函数里面有个出题陷阱“i=i++;”i++后并不立刻得到 1,因为使用赋值语句会使i变成0,所以i值是0
程序执行:
第二题
给定下面的类:
public class Qus2 {
public static void main(String[] args) {
int i=0;
//Here
}
}
哪个选项换掉类中的//Here,描述正确的是
A.System.out.println(i++);(编译错误)
编译正常
B.System.out.println(i+'0');(输出为2)
C.System.out.println(i);(输出为1)
D.System.out.println(i--);(输出为0)