String,StingBuffer,StingBuilder
来源:互联网 发布:我国能源现状数据 编辑:程序博客网 时间:2024/05/21 09:44
String 使用private final char value[] 来实现字符串的存储的,String对象创建之后,就不能再修改此对象中存储的字符串内容,是不可变字符串。
String类有一个特殊的创建方法,就是使用“”双引号来创建,如果用new String("zifuchuan")实际上是创建了两个对象,一个是通过""双引号创建的,另一个是new出来的对象,但是他们两个创建的时期不同(双引号的创建),一个是编译期创建的(利用new创建的对象)。
利用双引号创建的对象是编译期常量,编译时已经能确定它的值了,在编译好的class文件中,它已经在String Pool(字符串常量池)中了,接下来如果还有用双引号创建相同的字符串,则直接引用。
StingBuffer和StringBuilder是可变字符串,可以对其进行追加、插入、删除、替换等操作。
StringBuffer是线程安全的,但是速度慢,StringBuilder不是线程安全的,但是速度快。
String与StringBuffer的效率比较:
String的效率好于StringBuffer,因为JVM会直接作出连接操作,然后赋值给result,只开辟了一次内存段。编译StringBuffer后还要做append处理,花的时间要长一些。这个两种效率都一致.StringBuffer面试的关键点:
不能简单的认为append()效率好于"+"。
不要使用new创建string
注意intern()的使用。
在编译期能够确定字符串值得情况下,使用“+”效率最高。
避免使用“+=”来构造字符串。
0 0
- String,StingBuffer,StingBuilder
- String、StringBuffer、StingBuilder的区别
- String 与 StingBuffer的区别
- String和Stingbuffer赋值""区别
- String 与 StingBuffer的区别
- StingBuffer
- 代码演示C#中string和StingBuilder内存中的区别
- StingBuffer类
- sting stingbuffer 区别 总结
- 可变字符串Stingbuffer
- StringBuffer和StingBuilder的区别与比较
- java StingBuffer和StringBuffer的区别
- string
- String
- String
- string
- string
- String
- android 开发资源
- 简单的自定义View——表盘时钟
- dubbo 使用学习七(结果缓存)
- LeetCode 446. Arithmetic Slices II - Subsequence
- 9、(知识篇)JAVA反射(1)
- String,StingBuffer,StingBuilder
- [Python]DJango部署在Apache服务器配置示例
- 【快速幂模板】 nyoj102 次方求摸 420 p次方求和(快速幂+同余定理)
- 10、(知识篇)JAVA反射(2)
- 排序之归并排序
- HDU3749 Financial Crisis(点双连通分量+并查集)
- 06-图2 Saving James Bond - Easy Version (25分)
- zzu数学 实验九迭代一方程求解
- FormClosing事件,FormClosed事件