Java 实习生函数
我对实习生功能有点困惑。我有以下代码:
public class InternTest{
public static void main(String args[]){
String s1 = "ANEK";
String s2 = new String("ANEK");
String s3 = s2.intern();
System.out.println(s3 == s1); // True
String s11 = "ANEK".concat("SINGH");
String s22 = s11.intern();
System.out.println(s11 == s22); // True
String s4 = "nat".concat("ive");
String s5 = s4.intern();
System.out.println(s4 == s5); // True
String s33 = "ma".concat("in");
String s44 = s33.intern();
System.out.println(s33 == s44); // false
String s331 = "ja".concat("va");
String s441 = s331.intern();
System.out.println(s331 == s441); // false
}
}
我的问题是关于输出的。在第三种情况下,它给了我真,但在第四和第五种情况下,它给了我假的。我能知道这些输出背后的原因是什么吗?我无法得出结论,它为java保留词或关键字提供了假,因为当我尝试使用en um时,它给出了true,但通过te它给了我false。有人能告诉我为什么吗?