慕移动8447653
2018-06-29 21:54
public class StringBuildermethod {
public static void main(String[] args) {
// 创建一个空的StringBuilder对象
StringBuilder str=new StringBuilder();
// 追加字符串
str.append("jaewkjldfxmopzdm");
// 从后往前每隔三位插入逗号
for(int i=str.length()-3;0<=i;i-=3){
str.insert(i,",");
}
String str2=str.toString();
StringBuilder str3=str;
System.out.println(str);
System.out.println(str2);
System.out.println(str2.equals(str));//为什么这里不能用str2==str进行比较?
System.out.println(str3==str);//这里可以用==进行比较
}
}
基本数据类型用“==”,比较的是两变量的值,你这个不属于基本变量类型,所以“==”比较的是两个对象的内存存储地址,不是同一个new出来的对象,基本上不可能相等的,这时应该用equals()来判断。
==代表引用地址是否相同,equals判断str的值是否相同
Java入门第三季
409792 学习 · 4340 问题
相似问题