刚参加完本年建行社会招聘的笔试,对其中某些考点印象较深刻,现稍做整理把它发表出来,希望跟大家一起分享。
一:Java语法
程序代码如下:
int x = 0;
int arr[] = {1,2,3,5};
for (int i:arr) {
switch(i) {
case 1: x += i;
case 2: x += i;
case 3: x += i;
default :x += i;
case 5: x += i;
}
}
System.out.println(x);
回答程序输出结果。
正确答案:27
本题主要考查对JAVA语言swith语法的掌握程度。在跟几位考友交流的过程,发现有不少考友没注意到代码里缺少了break关键字,导致得出错误的答案了。
二:Java语法
程序代码如下:
public static void main(String[] args) {
short s = 1;
Integer i = 2;
go(s);
go(i);
}
public static void go(Short i) {
System.out.println("s");
}
public static void go(Long i) {
System.out.println("L");
}
public static void go(Number i) {
System.out.println("n");
}
回答程序输出结果。
正确答案:s n
本题考查Java语法重载的知识点及数据类型的自动转换规则。由于本人从来没用过Number对象,也不清楚封装类与Number对象的关系,所以只能痛失本题分了。