问题
单项选择题
有如下代码段 public class OperatorAndExceptions { public static void main(String args[ ] { int i=10,j=15; System.out.println(i==j); String s1 = new String("how are you!"); String s2=new String("how are you!"); System.out.println(s1==s2);} } 其输出为( )。
A.true false
B.true true
C.false true
D.false false
答案
参考答案:D
解析: 本题考查比较运算符==的使用。比较运算符不仅可以用于基本数据类型的数据之间的比较,还可以用于复合数据类型的数据之间的比较。题中整型数i和j的值不同,故其 ==比较的结果为false。s1和s2的值虽然都是“how are you!”,但是由于它们是不同的对象,因此运算后的结果为false。如果需要比较两个对象的值是否相同,则可以调用equals()方法。