String & StringBulider

来源:互联网 发布:机械设计手册软件 编辑:程序博客网 时间:2024/06/07 01:43

两个都是类型
StringBulider类提供了丰富的方法:insert(),append(),toString()等等。类似于list,只不过list的toString输出的是list,StringBulider的toString输出的是字符串。

在使用方面:(以续长一个字符串为例)
str=“abc”+“def”+“mno”; //String是一个类型,这段代码会生成3个对象:abc, abcdef, abcdefmno.
//String有concat可以用于连接字符串,但它依旧是生成一个新的对象,并不会改变原始的字符串对象。

而使用StringBulider则不同,它可以只生成一个对象
StringBulider sb =new StringBulider();
sb.append(“abc”);
sb.append(“def”);
sb.append(“mno”);
sb.toString(); //可以看到,append是可以改变对象本身的。

StringBuffer 和StringBulider的区别是线程安全问题。

现在的情况是:编译器会默认调用以创建StringBulider的方式来优化代码。所以大多数情况下,我们可以信赖编译器,直接使用String就可以了,只是特别强调效率的特殊情况下,我们最好创建一个StringBulider对象。

0 0
原创粉丝点击