java String字符串相关问题 帮我解释一下。

[复制链接]
查看11 | 回复4 | 2013-8-25 10:37:49 | 显示全部楼层 |阅读模式
java 中 == 是对比对象的物理地址
要用equals 才是对比两个对象的值s1 s2是两个不同的对象,String s2 = s1 + "b";创建了新的对象...
回复

使用道具 举报

千问 | 2013-8-25 10:37:49 | 显示全部楼层
因为字符串是引用类型,判断是否相等需要用 s2.equals("ab")...
回复

使用道具 举报

千问 | 2013-8-25 10:37:49 | 显示全部楼层
String 声明的是不可变得。所以S2!=S1,你把String改成S听stringBuffer试试,stringBuffer是可变的...
回复

使用道具 举报

千问 | 2013-8-25 10:37:49 | 显示全部楼层
只有两个字符串直接量相加才会在编译时优化。如 "a" + "b" 会被优化成 "ab",上面这样不会。...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行