标签:类型 记录 相等 ring 对象 nbsp 周末 span 表达
周末老师让写一个 猜数字的java小游戏,随机生成一个不同的四位数,然后根据用户的输入来判断 ,给出相应的结果
每次都是输入4位数字,按照标准,
分为数字存在(记录为B);
数字存在且位置正确(记录为A)
例如: 生成数字1234
竞猜数字: 1367(提示竞猜结论: 1A1B)
然后我结果定义的返回类型是一个字符串,然后用一个String jieguo来接收,在最后判断是否猜中数字时,应该和字符串"4A"进行比较,
开始我直接就用if(jieguo=="4A")来判断两个字符串是否相同,但是发现不行。
于是找度娘 发现了其中的不同:
比较字符串时,如果使用“==”比较两个对象时,比较的是两个对象的内存地址,所以不相等。即使它们内容相等,但是不同对象的内存地址也是不相同的。
所以就有了 equals();
例如:
String A=new String( "aaa" );
String B=new String( "aaa" );
这两个字符串当然应该是相等的。
如果用表达式A==B,则该表达式的值为false
如果用表达式A.equals(B),则该表达式的值为true ;
equals()比较的是对象的内容(区分字母的大小写格式).
标签:类型 记录 相等 ring 对象 nbsp 周末 span 表达
原文地址:http://www.cnblogs.com/wangzhiming/p/6720370.html