gpt4 book ai didi

java - 演示与 Java 的字符串比较

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:03:31 26 4
gpt4 key购买 nike

我想用几行代码来演示,在 Java 中,要比较两个字符串 (String),您必须使用 equals() 而不是运算符 ==.

这是我试过的:

public static void main(String Args[]) {
String s1 = "Hello";
String s2 = "Hello";

if (s1 == s2)
System.out.println("same strings");
else
System.out.println("different strings");
}

我期待这个输出:different strings,因为通过测试 s1 == s2 我实际上是在比较两个引用(即地址)而不是对象的内容.

但我实际上得到了这个输出:相同的字符串!

浏览互联网我发现一些 Java 实现会优化上面的代码,这样 s1s2 实际上引用相同的字符串。

那么,在 Java 中比较字符串(或对象)时,如何使用 == 运算符演示问题?

最佳答案

编译器会根据您的情况进行一些优化,以便 s1s2 实际上是同一个对象。您可以使用

来解决这个问题
String s1 = new String( "Hello" );
String s2 = new String( "Hello" );

然后您有两个具有相同文本内容的不同对象。

关于java - 演示与 Java 的字符串比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3612659/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com