内容相同的两个字符串类型的局部变量是否相等?

问题描述

我想知道我们是否尝试使用“==”运算符来查找相等

String test1 = "test";
String test2 = "test";

if(test1 == test2){
    System.out.Println("test1 and test2 are equal");
}

两者如何相等?我的意思是这些值不会保存在不同的应用程序堆栈中。并且这个功能(App Stack的效率使用)添加了哪个版本 谢谢。

解决方法

这是因为两者都指向同一个对象,因为您创建时没有使用 new 运算符,并且这属于字符串常量池