Java中String,StringBuilder和StringBuffer的区别
2个回答
2016-05-20 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
关注
展开全部
StringBuffer是一个从JDK1.0开始就存在的类,他就像String类一样,不过其内部成员是可以修改的。StringBuilder是JDK1.5新引入的一个类,他和StringBuffer提供相同的接口。相同点:他们继承相同的父类: AbstractStringBuilder他们实现相同的接口: java.io.Serializable, CharSequence他们基本上对外提供相同的方法不同点:StringBuffer类是线程安全的,所有StringBuffer提供的public方法基本上都是synchronized的StringBuilder类不是线程安全的,他的方法没有被synchronized锁修饰
2016-04-16 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
关注
展开全部
楼上正确。补充说明: 所谓的线程安全问题就是同时有多个线程访问同一个资源时引起的数据混乱问题。StringBuffer是线程安全的,所以当它作为成员变量时不存在线程安全问题。StringBuilder是线程不安全的,在作为成员变量时有可能出现线程不安全问题。如果在方法内部使用一个这样的变量,用StringBuilder效率会更高,因为首先StringBuilder没有加锁,其次方法内部不存在线程安全问题。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询