1
0
mirror of https://github.com/Snailclimb/JavaGuide synced 2025-06-20 22:17:09 +08:00

修改错别字

This commit is contained in:
Snailclimb 2018-08-10 22:44:18 +08:00 committed by GitHub
parent 974c5105d5
commit 083e7cd8b4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -160,7 +160,7 @@ Java语言通过字节码的方式在一定程度上解决了传统解释型
在Java中有两种形式可以实现多态继承多个子类对同一方法的重写和接口实现接口并覆盖接口中同一方法 在Java中有两种形式可以实现多态继承多个子类对同一方法的重写和接口实现接口并覆盖接口中同一方法
## 12. tring和StringBuffer、StringBuilder的区别是什么String为什么是不可变的 ## 12. String和StringBuffer、StringBuilder的区别是什么String为什么是不可变的
**可变性** **可变性**
   
@ -176,6 +176,7 @@ String中的对象是不可变的也就可以理解为常量线程安全
**性能** **性能**
每次对String 类型进行改变的时候都会生成一个新的String对象然后将指针指向新的String 对象。StringBuffer每次都会对StringBuffer对象本身进行操作而不是生成新的对象并改变对象引用。相同情况下使用StirngBuilder 相比使用StringBuffer 仅能获得10%~15% 左右的性能提升,但却要冒多线程不安全的风险。 每次对String 类型进行改变的时候都会生成一个新的String对象然后将指针指向新的String 对象。StringBuffer每次都会对StringBuffer对象本身进行操作而不是生成新的对象并改变对象引用。相同情况下使用StirngBuilder 相比使用StringBuffer 仅能获得10%~15% 左右的性能提升,但却要冒多线程不安全的风险。
**对于三者使用的总结:** **对于三者使用的总结:**
如果要操作少量的数据用 = String 如果要操作少量的数据用 = String
单线程操作字符串缓冲区 下操作大量数据 = StringBuilder 单线程操作字符串缓冲区 下操作大量数据 = StringBuilder