1、当一个表达式两边都是字面量,则编译过程中就会进行计算,并将结果生成在表达式的位置,以节省运算效率;
ps:jvm认为只有是字面量时,才会对比常量池中内容;而如果是new的新对象为不同对象。
例1:
<span style="color: #008080">1</span> <span style="color: #0000ff">public</span> <span style="color: #0000ff">static</span> <span style="color: #0000ff">void</span><span style="color: #000000"> main(String[] args){ </span><span style="color: #008080">2</span> String str = "123str"<span style="color: #000000">; </span><span style="color: #008080">3</span> String str1 = "123"+"str"<span style="color: #000000">; </span><span style="color: #008080">4</span> String str2 = <span style="color: #0000ff">new</span> String("123str"<span style="color: #000000">); </span><span style="color: #008080">5</span> <span style="color: #008080">6</span> System.out.println(str == str1); <span style="color: #008000">//</span><span style="color: #008000">true</span> <span style="color: #008080">7</span> System.out.println(str == str2); <span style="color: #008000">//</span><span style="color: #008000">false</span> <span style="color: #008080">8</span> }
以上就是java编译器特性的详细内容,更多请关注php中文网其它相关文章!
java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号