问题 单项选择题

阅读下面程序
publicclass Operators AndExpressions
voidequalsMethodl()
Strings1=newString("howareyou");
Strings2=newString("howareyou");
System.out.println(s1==s2);

publicstaticvoidmain(Stringargs[])
OperatorsAndExpressionsOperAndExp=newOperatorsAndExpressions
();
//用于复合类型数据的“==”运算符
OperAndExp.equalsMethodl();


程序运行结果是( )。

A.==
B.true
C.false
D.equal

答案

参考答案:C

解析: 本题考查的足Java语言中运算符的特殊用法。相等比较运算符“==”,不仅可用于基本类型的数据之间的比较,还可以用于复合数据类型之间的比较。但是,对于复合类型数据的“==”运算,其比较的目标是两个操作数是否是同一个对象。如果需要比较两个对象的值是否相同,则可以调用equals()方法。题目中函数equalsMethodl()的代码非常简单,首先生成两个字符串对象s1和s2,然后输出表达式“s1==s2”的结果。根据上面介绍的相等比较运算符的用法,字符串对象s1和s2是复合数据类型,因此表达式“s1==s2”比较的是s1和s2是否同一个对象。显然,s1和s2虽然具有相同的值,即“howareyou”,但它们是两个不同的对象。因此,本题的正确答案足C,

单项选择题 A1/A2型题
判断题