一个简单的Java题,大家看看我的答案对不对。

Giventhefollowingcode:Strings="hello";Stringt="hello";charc[]={'h','e','l','l','o'};W... Given the following code:
String s = "hello";
String t = "hello";
char c[] = {'h','e','l','l','o'} ;
Which return true?
A.s.equals(t);
B.t.equals(c);
C.s==t;
D.t.equals(new String("hello"));
E.t==c.

我的答案是C,请大家给我一个确切的答案。
展开
 我来答
Monkey家园
2011-01-04 · TA获得超过5635个赞
知道大有可为答主
回答量:1134
采纳率:60%
帮助的人:612万
展开全部
①正确答案是A C D

②原因:
A: 同类型,同值 √
B: equals 的比较必须在同类型基础上,String 和char[] 为不同类型 ×
C: 显然是相等的 √
D: 这个也必然相等, new String ("hello") 在值上等价于 s √
E: 不同类型不能用== ×

③进一步原因:
== 操作符只能在同类型基础上比较值是否相等,相等则为true,否则为false
equals 方法能在不同和相同类型基础上比较,只要类型和值有一个不同,就一定是false,否则为true;
ArmoryBen
2011-01-04 · 超过13用户采纳过TA的回答
知道答主
回答量:33
采纳率:0%
帮助的人:39.1万
展开全部
应该是ACD String有个常量池 String s = "hello" 和String t = "hello"; 在常量池中存放一个位置

s==t 返回true
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
rdfeabc
2011-01-04 · TA获得超过176个赞
知道小有建树答主
回答量:190
采纳率:100%
帮助的人:132万
展开全部
ACD,equals比较的是两个String的值而不是引用(内存地址)
t==c是不对的,因为两者不是同一类型的,不可以比较,编译的时候会提示不通过的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tunwa
2011-01-04 · TA获得超过451个赞
知道小有建树答主
回答量:330
采纳率:100%
帮助的人:59.9万
展开全部
肯定不对的,应该是A才对啊,因为s,t的内存地址不一样的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
十利M
2011-01-04 · TA获得超过312个赞
知道答主
回答量:58
采纳率:0%
帮助的人:30.4万
展开全部
equals(),用来判断字符串,==用来判断整数型,
选A.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友02828fb
2011-01-04 · 超过55用户采纳过TA的回答
知道小有建树答主
回答量:171
采纳率:0%
帮助的人:149万
展开全部
据我的经验,A,C,D都对。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式