`

String 中 equals() vs ==

    博客分类:
  • J2SE
阅读更多
String 中的 equals() 和 == :

equals() 就是比较值,而不是引用;

== 比较引用;

如果2个String是引用2个相同的字面值,则这2个字符串变量都指向这个字面值,因此它们使用 == 比较,返回 true;

如果 2者之一创建了新字符串对象,则用 == 比较就是 false;

例子:
public class Test {
	public static String s1 = "s";
	public static String s2 = new String("s");

	public static void main(String[] args) {
		String s = "s";
		System.out.println(s == s1);
		System.out.println(s == s2);
		s1 = s1 + "";
		System.out.println(s == s1);
	}
	/*
	 * 结果是:
	 * 		true
	 * 		false
	 * 		false
	 */
}

分享到:
评论

相关推荐

    Java基础复习(内附String中equals与==区别的分析)

    本篇复习将重点讨论String类中的`equals()`方法和`==`运算符的区别,这对于理解对象比较和字符串操作至关重要。 首先,`==`运算符在Java中用于比较基本类型(如int、char)的值,而在比较对象时,它实际上是检查两...

    java中equals和==的区别

    String 中的 equals 和 == 还有更多的细节。下面是一个简单的示例程序: public class TestString { public static void main(String[] args) { String s1 = "Monday"; String s2 = "Monday"; if (s1 == s2) ...

    java中equals和==的区别.doc

    Java 中 equals 和 == 的区别 Java 中的 equals 和 == 是两个不同的运算符,它们之间的区别是非常重要的。 首先,我们需要了解 Java 中的内存模型。在 Java 中,变量可以分为两种:基本类型(primitive type)和...

    java 中String.equals和==的比较

    Java 中 String.equals 和 == 的比较 Java 中 String.equals 和 == 的比较是 Java 编程语言中一个常见的概念,但是一些初学者容易混淆这两个概念。下面我们将详细介绍 Java 中 String.equals 和 == 的比较。 ...

    java中equals和==的区别.docx

    例如,在 Java 中,String 类的 equals 方法用于比较两个字符串的内容是否相同: ```java String s1 = "Monday"; String s2 = "Monday"; if (s1.equals(s2)) { System.out.println("s1 equals s2"); } else { ...

    String中==与equals区别验证

    在Java编程语言中,`==` 运算符与 `equals()` 方法被广泛用于比较对象,尤其是当处理字符串(`String` 类)时。这两者之间的区别是理解Java内存管理和对象引用的关键。以下是对给定代码片段中所展示概念的详细解析。...

    java 资料 equals 与== 的区别

    Java 中的equals和==的区别 Java 是一种面向对象的编程语言,其中有两种数据类型:基本数据类型和引用数据类型。基本数据类型包括整数类型、浮点数类型、字符类型、布尔类型等,共有八种;而引用数据类型则包括 ...

    equals与==之间的区别

    在Java编程语言中,`equals`方法与`==`操作符是进行对象比较时最常用的两种方式,但它们之间存在着显著的区别。理解这些差异对于正确地处理对象比较至关重要。 ### `==` 操作符 `==`操作符主要用于比较两个基本...

    java中equals和==的区别.

    2. 在`String`类中,`equals()`方法已经被重写,用于比较两个字符串对象的内容是否相等,不考虑它们的引用。这意味着即使两个`String`对象在内存中位于不同的位置,只要它们包含相同的字符序列,`equals()`也会返回`...

    java中equals和==的区别.pdf

    在上述代码中,即使s1和s2是通过不同的方式创建的字符串对象,s1.equals(s2)仍然返回true,因为String类的equals方法已被重写,用来比较字符串的内容。 除了String类以外,Java标准库中许多其他类也重写了equals...

    java中equals()函数的用法 equals和==的区别

    在Java编程语言中,`equals()`方法和`==`运算符是两个经常被用来比较对象是否相等的关键概念。理解它们的区别对于编写出正确、健壮的代码至关重要。 首先,`==`运算符用于基本类型(如int, char, boolean)的比较,...

    java中equals和==的比较.pdf

    - 当两个String对象的引用指向内存中的同一字符串常量池中的值时,`==` 返回true,`equals()` 也会返回true。 - 如果使用`new String()`创建对象,即使内容相同,也会在堆中创建新的对象,这时`==` 返回false,...

Global site tag (gtag.js) - Google Analytics