齐浩 发表于 2015-5-23 18:58
首先说String和任何数据相加都会是String类型的
其次,第一个是
String a="a"+"b"+1;
Heroe 发表于 2015-5-23 18:39
这就要解释==和equals的区别了,==判断的内存地址
qq496099229 发表于 2015-5-23 19:10
那这个呢!
final String a="a";
String b=a+"f";
齐浩 发表于 2015-5-23 19:19
我不是解释这个了吗???a的地址+f。。打印时调取引用会打印出af,但是他自己的内存里是:a的地址值+"f" ...
笑面人 发表于 2015-5-23 19:38
没看懂你想问啥
qq496099229 发表于 2015-5-23 19:30
这题的结果和刚刚你解释的结果不一样的呀!
齐浩 发表于 2015-5-23 19:46
怎么不一样?运行结果第一个true,第二个false,我解释的也是第二个false啊,,内存里存的东西不一样啊, ...
qq496099229 发表于 2015-5-23 19:49
不是还有第三个嘛?第三个可是true呀
齐浩 发表于 2015-5-23 19:52
没发现第三个。。。。哪有第三个。。。
qq496099229 发表于 2015-5-23 19:54
在某一次回复你的时候,我弄出来了!
小志的漫游 发表于 2015-5-25 16:19
String a="a"+"b"+1; //java的常量优化机制,在编译的时候自动生成ab1字符串,常量池中就有ab1字符串
Strin ...
小志的漫游 发表于 2015-5-25 16:19
String a="a"+"b"+1; //java的常量优化机制,在编译的时候自动生成ab1字符串,常量池中就有ab1字符串
Strin ...
小志的漫游 发表于 2015-5-25 16:19
String a="a"+"b"+1; //java的常量优化机制,在编译的时候自动生成ab1字符串,常量池中就有ab1字符串
Strin ...
qq496099229 发表于 2015-5-23 19:42
final String a="a";
String b=a+"f";
String c="af";
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |