String、stringBuilder、stringBuffer都是操作字符串的,string操作字符串的长度是固定不可变的,因为其底层使用的是固定不可变的字符数组(final char[])。stringBuilder和stringBuffer都是操作可变长度字符串,支持字符串拼接,拼接方式使用append来完成,底层的字符串数组没有使用final修饰。
- 运行速度:StringBuilder > StringBuffer > String
- String最慢的原因:String为字符串常量,而StringBuilder和StringBuffer均为字符串变量,即String对象一旦创建之后该对象是不可更改的,但后两者的对象是变量,是可以更改的。
- String:适用于少量的字符串操作的情况。
- StringBuilder:适用于单线程下在字符缓冲区进行大量操作的情况(线程不安全)。
- StringBuffer:适用多线程下在字符缓冲区进行大量操作的情况(线程安全)。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/75178.html