黑马程序员技术交流社区

标题: 字符串的相关问题 [打印本页]

作者: 段燚涛    时间: 2015-8-1 14:34
标题: 字符串的相关问题
字符串:
字符串对象是不可变的。
字符串的引用可以改变。
字符串在底层通过char字符数组来存储。一个char:2字节。
先在常量池里面查找,如果有直接引用;没有则创建新对象,放入常量池。
字面量进行的赋值操作则会进行常量池查找,如果是new,则不会,而是直接new新的对象。
池:为了重用。
java在编译时做了一个优化,若计算两边的类容都是字面量,则会进行计算,将结果生成到.class文件中,所以字字节码文件中我们看到的是如下类容:
string str4 = hello + world ------>string str4 = helloworld
string s1=”abc123“;
string s2=”abc“+123;
s1 == s2 true
若计算两边其中有一个为变量,则不会进行优化,也就是不会被放入常量池。不能重用。
string str5 = str4 +world   ------->string str5 = str4+world
string类一系列的方法
stringbuilder类的方法
stringbuilder类和stringbuffer类的区别
string类和stringbuilder类的区别。





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2