黑马程序员技术交流社区
标题:
关于字符串拼接比较的一点分享
[打印本页]
作者:
水月灬清影
时间:
2016-7-10 21:01
标题:
关于字符串拼接比较的一点分享
String s1 = "hello";
String s2 = "world";
String s3 = "helloworld";
System.out.println(s3 == s1 + s2);// false
System.out.println(s3.equals((s1 + s2)));// true
System.out.println(s3 == "hello" + "world");// true! 先执行两个常量字符串拼接,再在字符串常量池中匹配,如存在,直接指向拼接串地址
System.out.println(s3.equals("hello" + "world"));// true
**另特别注意以下程序
String s4 = "say" + s1;
String s5 = "say" + s1;
**// s1是变量,s5在运行时才知道具体值,所以s4和s5是不同的对象,地址值不同 注意与两个常量拼接相区分!
System.out.println("s4和s5内存地址相同吗?" + (s5 == s4)); //false
System.out.println("s4和s5值相同吗?" + (s5.equals(s4))); //true
作者:
zhoubo
时间:
2016-7-10 21:13
谢谢分享
作者:
糊图
时间:
2016-7-10 22:52
自己学到了还给别人分享,顶你
作者:
suming
时间:
2016-7-10 23:35
谢谢分享
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2