第一题 泛型擦除 B
import java.util.HashSet;
import java.util.Set;
public class T {
public static void main(String[] args) {
Set<Short> s = new HashSet<>();
for(short i=0;i<100;i++){
s.add(i);
s.remove(i-1); // short - int = int
}
System.out.println(s.size());
}
}
// A. 1
// B. 100
// C. Throw Excption
第二题
- URL not good
- URI right
第三题 类的加载顺序
public class Elvis {
public static final Elvis ELVIS = new Elvis();
private Elvis() {
}
private static final Boolean LIVING = true;
private final Boolean alive = LIVING;
public final Boolean lives() {
return alive;
}
public static void main(String[] args) {
// System.out.println(ELVIS.lives());
System.out.println(ELVIS.lives() ? "活着" : "死亡");
}
}
// A. 活着
// B. 死亡
// C. Throw Excption
修复后
public class Elvis {
private static final Boolean LIVING = true;
public static final Elvis ELVIS = new Elvis();
private Elvis() {
}
// private static final Boolean LIVING = true; // to late
private final Boolean alive = LIVING;
public final Boolean lives() {
return alive;
}
public static void main(String[] args) {
// System.out.println(ELVIS.lives());
System.out.println(ELVIS.lives() ? "活着" : "死亡");
}
}
第四题 Math.abs(int) 可能返回负数
public static void main(String[] args) {
int x = Integer.MIN_VALUE;
System.out.println(Math.abs(x)); // -2147483648
}
JLS15.25. Conditional Operator ? :
public static void main(String[] args) {
boolean codition = true;
Number result = codition ? Integer.valueOf(3) : Float.valueOf(1.0f);
System.out.println(result);
}
// 3.0
Number result;
if(codition){result=Integer.valueOf(3);}
else{result=Float.valueOf(1.0f);}