构造方法不同的对象的区别
- 双引号创建的字符串对象,在
字符串常量池
中存储,通过构造方法创建的字符串对象,在堆内存
中存储。 - 在
常量池
中的数据&不会重复,所以双引号构造的相同字符串地址相同,构造方法构造的在堆内存
中构造,每new
一次都会开辟一块新的空间。 - 所以构造字符串时,使用双引号构造的字符串更省内存7。
数据比较
-
数据类型变量比较数值,引用型变量比较地址。
-
忽略大小写比较:
equalsIgnoreCase
split的特殊情况
- 如果被切的字符串的头符合规范,切分后,在前面会保留一个长度为0的空字符串,如果被切的字符串的尾符合规范,切分后,在后面会自动舍弃那个长度为0的空字符串。
StringBuilder
-
StringBuilder.append()
的返回值是它本身 -
链式编程:
sb.append().append() // 因为.append()返回值是本身
-
StringBuilder.sppend()
设置返回值的意义:可以让我们使用链式编程。