String和StringBuilder有什么区别呢?它两如何互换呢?往下看
1、String和StringBuilder的区别
- String内容不可变(字符串的拼接,会在堆内存的常量池中产生很多个字符串,浪费内存)
- StringBuilder内容分可变(字符串的拼接,在内存中始终只有一个对象,节约内存)
2、String和StringBuilder互相转换
1.String→StringBuilder对象
——使用StringBuilder的带参数构造方法
public StringBuilder(String str)
2.把StringBuilder→String对象
——使用toString方法
举个
public String toString()
public class Demo04StringToStringBuilder {
public static void main(String[] args) {
//定义一个字符串
String str = "hello";
//把字符串转换为StringBuilder对象
StringBuilder sb = new StringBuilder(str);
//往StringBuilder中添加数据
sb.append("你好").append("呵呵").append("老王").reverse();
//把StringBuilder转换为String
String s = sb.toString();
System.out.println(s);//王老呵呵好你olleh
}
}