本文主要是介绍JAVA一些趣味题(不间断总结),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1、
无意间从网上看到这么一个题:
结果是什么呢?
无非是true和false(好像是废话),答案是:
false
true
true
true
true
true
true
先说一下第四个和第一个对比,第一个的String b = a+"b";而不是String b="a"+"b";
而第四个说白了String abc="abc"和String abc3="ab"+"c"是一样的,这个可以看生成的class文件的
于是第三个输出继续和第一个对比,第三个输出从反编译看到也是“abc”,但不要忘了ab2他是final关键字,而final关键字的源码里存储数据的方式为
private
final
char
value[];
表明String不仅不能被复写,连它里面存数组的域都是final的,意思你一旦初始化它你就没法改它了。于是第二个输出就能解释了。
这个题主要考的是final关键字的使用和String的值存放的理解(我是这样理解的),这里有个很好的解释可以参考一下:
http://bbs.csdn.net/topics/391070616
这篇关于JAVA一些趣味题(不间断总结)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!