当前位置: 首页 > 知识库问答 >
问题:

比较两个字符串文字[重复]

颛孙沈义
2023-03-14

在与字符串进行比较时,我们可以使用==进行。等于()

==中,我们知道它检查引用,但在. equals()中它检查内容。

假设有两个字符串

字符串s=“SO”;字符串s1=“SO”;

所以在这种情况下,s1==s和s.equals(s1)都将为真。

但在这里它给了我错误

所以我假设==优先级高

所以在这种情况下

System.out.println(""+s1==s);

它将像(“s1)==s一样被拆分,现在“s1”将是一个新字符串,因此新字符串永远不会等于s,因此其打印错误

我只是想知道我的想法是否正确

共有1个答案

孔飞翔
2023-03-14

s1在堆上创建一个新的字符串对象(因为它没有声明为final)。因此,引用将不相同。

 类似资料:
  • 问题内容: 我有一个简单的疑问。如果有人帮助我,那就太好了。 我有两个字符串: 这两个值相等,但是如何在Java中比较它们呢?我们拥有并用于比较字符串alpha值,类似地,如何比较数字值。 问题答案: 这就对了。您可以使用方法将数字字符串转换为整数,该方法将返回类型。然后比较与相同。

  • 我会如何比较以下两个日期?

  • 这让我总是虚伪。 我能做什么??我只希望bool在“on”时为True,在“null”时为false

  • 如何检查一个字符串是否在另一个字符串中,但匹配项需要在前面,而不是中间或最后。例如,a="

  • 我无法使用以下代码比较两个字符串: 我有一个名为“gender”的字符串,它将以“male”或“fomen”作为其值。 这不起作用,所以我尝试了以下几种: 又一次,没有奏效。请告诉我如何使用if语句比较字符串值。

  • 问题内容: 更新:我应该早点指定它,但是并非所有名称都只是浮点数。例如,其中一些以“ YT”为前缀。因此,例如“ YT1.1。所以,您遇到相同的问题,YT1.9 <YT1.11应该为真。我真的很惊讶字符串比较失败…。 您好,这应该是一个非常简单的问题,但我似乎找不到答案。我想按名称对一堆XL工作表进行排序。每个名称都是数字,但与教科书“节”的编号方式相同,这意味着第4.11节在4.10之后,在4.