StringBuffer和StringBuilder有什么区别啊 笔试的时候考了个这个题,没答上来,哈哈,大神们说说吧 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 现在推荐用StringBuilder,这个是线程不同步的。我知道的区别应该在这里 StringBuilder是jdk1.5之后出现的。因为是线程不同步的,所以效率会比StringBuffer高 StringBuilder和StringBuffer的区别只在于前者线程不安全,后者实现了所有方法的线程同步StringBuffer由于实现了线程同步,所以在执行的时候会有加锁的资源消耗,效率较低在不受到线程共享变量的影响情况下,都推荐使用StringBuilder 23. StringBuffer和StringBuilder的区别在于:java.lang.StringBuffer线程安全的可变字符序列。一个类似于String的字符串缓冲区,但不能修改。StringBuilder与该类相比,通常应该优先使用java.lang.StringBuilder类,因为它支持所有相同的操作,但由于它不执行同步,所以速度更快。为了获得更好的性能,在构造StringBuffer和StringBuilder时应尽可能指定它的容量。如果字符长度不超过16个字符就不用了.相同情况下StringBuilder比使用StringBuffer仅能获得10%~15%左右的性能提升,但也冒多线程不安全的风险。除非你能确定你的系统瓶颈在StringBuffer上,并且确定你的模块不会再运行在多线程模式下,否则还是使用StringBuffer。 直接看源码最能说明问题了,StringBuffer的方法加了synchronized关键字,所以线程安全。 臭狗屎 1.6 哥卸载了 换1.5 如何得到一年的起始和结束时间?? 大家来挑错 求一个邮件收发界面 jAVA环境变量 多态的疑问。 有Swing开发过电信网管系统的朋友吗? java初学问题。 我的APPLET没有问题,嵌入网页后,为什么用APPLETVIEWER可以运行,但用IE就不行 急!Jbuilder中文显示问题? 关于java利用反射调用泛型类型的问题 突然很奇怪(int)Math.random()*10只等于0
StringBuffer由于实现了线程同步,所以在执行的时候会有加锁的资源消耗,效率较低
在不受到线程共享变量的影响情况下,都推荐使用StringBuilder
列。一个类似于String的字符串缓冲区,但不能修改。StringBuilder与该类相比,通常应该
优先使用java.lang.StringBuilder类,因为它支持所有相同的操作,但由于它不执行同步,
所以速度更快。为了获得更好的性能,在构造StringBuffer和StringBuilder时应尽可能指定
它的容量。如果字符长度不超过16个字符就不用了.相同情况下StringBuilder比使用
StringBuffer仅能获得10%~15%左右的性能提升,但也冒多线程不安全的风险。除非你能确定
你的系统瓶颈在StringBuffer上,并且确定你的模块不会再运行在多线程模式下,否则还是
使用StringBuffer。