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

为什么引用字符串str1=str+“test”不同于字符串str3=“checktest”[duplicate]

翟聪
2023-03-14

为什么在下面的代码中,str1==str2返回false,而str2==str3返回true?根据我的理解,str1==str2也应该返回true。

public static void main(String[] args) throws Exception {
        String str = "me";
        String str1 = str + "test";
        String str2 = "metest";
        String str3 = "me" + "test";
        System.out.println(str1==str2); // O/P false
        System.out.println(str2==str3); // O/P true

    }

共有1个答案

蔚学真
2023-03-14

字符串串联创建一个新字符串,并将两个串联字符串的内容复制到它。这就是为什么。

 类似资料:
  • 其实说到字符串,这个概念没有具体的说法,但是我们根据平时的归纳总结,也能一段,便于大家理解,字符串就是把字符连在一直,串成一串又一串;字符串内可以包含数字、字母、特殊符号等所有内容;在Python中只要对一些内容加上对双引号或一对单引号,就默认为是字符串;(三对单引号或三对双引号可以写多行字符串)。 字符串的关键是str,是string的缩写。 一、什么是字符串? 解释:对于"Holl world

  • 问题内容: 显然,它不是根据长度来比较它们,而是通过编码来比较它们。但是,我不知道它是如何工作的。我需要一些解释:-) 问题答案: 字符串按字典顺序进行比较。即逐个字符,直到它们不相等或没有要比较的字符为止。“11”的首字符小于“ 3”的首字符。 如果我们使用字母,则因为不小于,不小于,但是由于小于,小于。 您可以将字符串显式转换为数字:

  • 我一直认为f-strings调用了方法。也就是说,f{x}始终与str(x)相同。然而,对于这个类 是,而是”。如果我使用enum,这个例子就不起作用了。枚举作为基类。 f字符串调用哪些功能?

  • 问题内容: String[] letters = {“A”, “B”, “C”, “D”, “E”, “F”, “G”, “H”, “I”, “L”}; 为什么是 Fk呀! 输入AL字母之一绝对不会发生? 问题答案: 字符串是对象。所述通过引用,而不是由它们的内部值进行比较的对象。 有两种解决方案: 使用method来比较两个对象的值。 使用代替。这是原始的,因此可以使用。

  • 问题内容: Oracle Java Community网站上的一篇文章提供了以下方法作为示例(对于JPA Converter,但这并不相关): 将String y强制转换为String val有什么用?有正当的理由吗? 原始文章:JPA的新增功能 问题答案: 这样的转换是完全没有必要的。我可以想象那是以前 但是后来参数类型更改为,而作者只是忘了删除强制类型转换。

  • 当我用)运算符使用双引号,并与其他字符串文字值相同的结果为true...为什么会这样? 据我所知,当我们使用()操作符处理字符串时,JVM返回新的,它在堆内存中创建一个新的字符串实例,并在字符串池中创建一个引用。如果这是真的,那么它如何在一个场景中返回true,在另一个场景中返回false? 第一种情况: 第二个场景: 有人能帮我吗?