1.What will be the output when you compile and execute the following program. The symbol ’⌴’ means space.
public class T{
private void test() {
String aStr = "⌴One⌴";
String bStr = aStr;
aStr.toUpperCase();
aStr.trim();
System.out.println("[" + aStr + "," + bStr + "]");
}
static public void main(String[] a) {
new T().test();
}
}
A.[ONE,⌴One⌴] B.[⌴One⌴,One] C.[ONE,ONE] D.[⌴One⌴,⌴One⌴]
通过String bStr = aStr;这句代码使得 bStr 和 aStr 指向同一个地址空间,所以最后 aStr 和 bStr 的结果应该是一样,String类是定长字符串,调用一个字符串的方法以后会形成一个新的字符串。所以,应选D。
2.下面的代码输出结果是什么?
import java.util.HashSet;
import java.util.Set;
public class ShortSet {
public static void main(String[] args) {
// TODO Auto-generated method stub
Set<Short> s = new HashSet<Short>();
for(Short i=0; i<5; i++){
s.add(i);
s.remove(i-1);
}
System.out.println(s.size());
}
}
A.1 B.100 C.抛出异常 D.None of the above
i是Short类型,i-1是int类型,其包装类为Integer,所以s.remove(i-1);(i-1的返回类型会自动变成int类型)并不能移除Set集合中的Short类型对象。所以应选B。