StringBuffer vs StringBuilder VS StringTokenizer在内部实现上有什么区别。何时使用这些。请等待答案。StringBuffer vs StringBuilder VS StringTokenizer
更新: -
我也在浏览源代码。
StringBuffer vs StringBuilder VS StringTokenizer在内部实现上有什么区别。何时使用这些。请等待答案。StringBuffer vs StringBuilder VS StringTokenizer
我也在浏览源代码。
StringBuffer
- 在推出JDK 1.0 - 是线程安全的(它的所有方法都是),而自从JDK 1.5以来,StringBuilder
不是。因此建议在正常情况下使用后者。
StringTokenizer
是为了一个完全不同的目的,然后前两个:切割成块,而不是组装。正如@Henning指出的那样,它自JDK 1.5以来也“退役” - 建议使用String.split
代替。
'StringTokenizer'虽然不被弃用,但也是一个“遗留因为兼容性原因而保留的类,尽管在新代码中不鼓励使用它“。 http://download.oracle.com/javase/6/docs/api/java/util/StringTokenizer.html – Henning 2010-09-24 09:51:56
@亨宁,感谢您的注意 - 我更新了我的答案,包括这一点。 – 2010-09-24 09:53:44
StringBuffer被设计为线程安全的,StringBuffer中的所有公共方法都是同步的。 StringBuilder不处理线程安全问题,并且它的任何方法都没有同步。
在大多数情况下,StringBuilder比StringBuffer具有更好的性能。
尽可能使用新的StringBuilder。
Here是StringBuilder & StringBuffer
的StringBuilder &的performance comparison
的StringBuffer存放字符串,其中StringoTokeizer类允许应用程序将字符串分解为标记。所以它像鹤立鸡群
的StringBuffer用作相同的目的的StringBuilder除了StringBuffer的是线程安全。
StringTokenizer用于根据某些分隔符将字符串拆分为令牌。
[StringBuilder和StringBuffer之间的差异可能的重复](http://stackoverflow.com/questions/355089/difference-between-stringbuilder-and-stringbuffer) – 2016-06-20 13:33:08