深入理解Java String类(综合)
在Java语言了中,所有类似“ABC”的字面值,都是String类的实例;String类位于java.lang包下,是Java语言的核心类,提供了字符串的比较、查找、截取、大小写转换等操作;Java语言为“+”连接符(字符串连接符)以及对象转换为字符串提供了特殊的支持,字符串对象可以使用“+”连接其他对象。String类的部分源码如下:
public final class String
implements java.io.Serializable, Comparable, CharSequence {
/** The value is used for character storage. */
private final char value[];
/** Cache the hash code for the string */
private int hash; // Default to 0
...
}
从上面可以看出
1)String类被final关键字修饰,意味着String类不能被继承,并且它的成员方法都默认为final方法;字符串一旦创建就不能再修改。
2)String类实现了Serializable、CharSequence、 Comparable接口。
3)String实例的值是通过字符数组实现字符串存储的。
1. “+”连接符
1.1 “+”连接符的实现原理
1.2 “+”连接符的效率
2. 字符串常量池
2.1 内存区域
2.2 存放的内容
3. intern方法
3.1 intern的用法
4. String、StringBuilder和StringBuffer
4.1 继承结构
4.2 主要区别
https://blog.csdn.net/ifwinds/article/details/80849184