黑马程序员技术交流社区

标题: 字符串的问题 [打印本页]

作者: kong7906928    时间: 2014-6-16 23:37
标题: 字符串的问题
  1. String s1 = "abc";
  2.    String s2 = new String("abc");
  3.    System.out.println(s1==s2);
  4.    String s3 = "你好吗";
  5.    String s4 ="你";
  6.    String s5 ="好吗";
  7.    System.out.println(s3==(s4+s5))
  8. 结果:false false
复制代码
求解释:)

作者: wyg129911    时间: 2014-6-17 12:45
字符串用“==”对比肯定是false
因为“==”在字符串比较的时候是比较他们的地址
对象都不同(s1,s2)不管值是多少,那地址肯定是不相同的
你换一个方法试试
用s1.equals(s2)这个函数试试看看
作者: wuhyoung    时间: 2014-6-17 14:34
==比较地址,你所比较的对象不是同一个,这个有什么好解释的
作者: 焦国军    时间: 2014-6-18 13:53
引用类型用==比较,比较的是地址




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2