java - 使用 equals 方法比较字符串并 ==

标签 java

Possible Duplicate:
How do I compare strings in Java?
Java String.equals versus ==

我是 Java 编程新手,我有一个关于比较字符串的小问题 equals方法和==

示例 1:从用户获取输入时不起作用,但如果设置了初始值,则可以正常工作。

if(str1 == str2) 
 System.out.println("equal");

示例 2:始终有效

if(str1.equals(str2))
 System.out.println("equal");

如果我必须比较字符串,可以使用哪个命令。

最佳答案

String literals指向相同的位置/值,这就是为什么 == 对字符串文字起作用

当您从用户那里获取输入时,它将被视为新的 String 对象。

equals() 检查值是否相等,而 == 检查引用是否相等。

关于java - 使用 equals 方法比较字符串并 ==,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12524005/

相关文章:

java - 试图在 Jframe(形成汽车)上为线条/圆的 ArrayList 设置动画,但我似乎无法删除绘制的旧线条

java - Tomcat主页(地址:8080) redirects to website homepage

java - 用 JAVA 固定十进制数

java - 将 PDF 页面导出为 Java 中的一系列图像

java - 限制 JTextPane 内存使用

java - 如何在 Jython 解释器中将 Python 类转换为 Java 类?

java - (b & 0xff) 是什么意思?

java - 如何在共享首选项中保存 float 组?

java - Veris.x 3.9.4上的Redis连接丢失

c# - C 和 C++ 以外的语言中未定义行为的示例