84669 orang belajar
152542 orang belajar
20005 orang belajar
5487 orang belajar
7821 orang belajar
359900 orang belajar
3350 orang belajar
180660 orang belajar
48569 orang belajar
18603 orang belajar
40936 orang belajar
1549 orang belajar
1183 orang belajar
32909 orang belajar
public class Test { public static void main(String[] args) { String s1 = new String("abc"); String s2 = s1.intern(); System.out.println(s1==s2);这里为什么输出false String s3 = "123"; String s4 = s3.intern(); System.out.println(s3==s4); } }
Tiada "abc" dalam kumpulan pemalar rentetan Mengapa hasil keluaran di bawah palsu dan benar - Soal Jawab laman web Cina PHP - Tiada "abc" dalam kumpulan pemalar rentetan ? - Soal Jawab tapak web Cina PHP
Datang dan tonton dan pelajari.
String s1 = new String("abc"); 生成了常量池中的“adc” 和堆空间中的字符串对象。
String s2 = s1.intern(); 这一行的作用是s1对象去常量池中寻找后发现"abc"已经存在于常量池中了。 然后生成一个s2的引用指向常量池中的“abc”对象。
结果就是 s1 和 s2 的引用地址明显不同。因此返回了false。
String s3 = "123"; 这一行代码会直接去常量池中创建
String s4 = s3.intern(); 发现"123"已经在常量池存在 直接引用指向常量池“123”对象
结果就是s3 和s4 的引用地址相同 返回true
不过jdk1.6 和1.7 有点不同 建议去看看api 或者百度下
Tiada "abc" dalam kumpulan pemalar rentetan Mengapa hasil keluaran di bawah palsu dan benar - Soal Jawab laman web Cina PHP - Tiada "abc" dalam kumpulan pemalar rentetan ? - Soal Jawab tapak web Cina PHP
Datang dan tonton dan pelajari.
String s1 = new String("abc"); 生成了常量池中的“adc” 和堆空间中的字符串对象。
String s2 = s1.intern(); 这一行的作用是s1对象去常量池中寻找后发现"abc"已经存在于常量池中了。 然后生成一个s2的引用指向常量池中的“abc”对象。
结果就是 s1 和 s2 的引用地址明显不同。因此返回了false。
String s3 = "123"; 这一行代码会直接去常量池中创建
String s4 = s3.intern(); 发现"123"已经在常量池存在 直接引用指向常量池“123”对象
结果就是s3 和s4 的引用地址相同 返回true
不过jdk1.6 和1.7 有点不同 建议去看看api 或者百度下