A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 626007810 中级黑马   /  2016-4-4 23:07  /  596 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

String是一个不可变的字符序列,字符串常量,值是不能改变的
StringBuffer是一个可变的字符序列,是jdk1.0版本的,线程安全(效率低)的可变字符序列.字符串缓冲区,
StringBuilder是一个可变的字符序列,是jdk1.5版本的,线程不安全(效率高)
StringBuffer与StringBuilder方法使用时没区别么

2 个回复

倒序浏览
没有啊 只不过一个线程安全(效率低) 一个线程不安全(效率高)
回复 使用道具 举报
StringBuffer是线程安全的,所以当它作为成员变量时不存在线程安全问题。StringBuilder是线程不安全的,在作为成员变量时有可能出现线程不安全问题。如果在方法内部使用一个这样的变量,用StringBuilder效率会更高,因为首先StringBuilder没有加锁,其次方法内部不存在线程安全问题。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马