`
jsyczynba
  • 浏览: 8017 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

equals & ==

 
阅读更多
equals and ==
equals: 方法是String类从它的超类Object中继承来的。被用来检测两个对象的内容是否相等。equals 方法不能用在基本类型中,只能用在引用类型里,因为基本类型没有equals方法。

== :用于比较引用和比较基本数据类型时具有不同的功能。比较基本数据类型,如果两个值相同,则结果为true

public class Test {
public static void main(String [] args) {
String str = "abc";
String str1 = "abc";
boolean b =(str == str1);
boolean b1 = str.equals(str1);
System.out.println(b);
System.out.println(b1);


String str2 = new String("abc");
String str3 = new String("abc");
boolean b2 =(str2 == str3);
boolean b3 = str2.equals(str3);
System.out.println(b2);
System.out.println(b3);
}

}
结果 :true  true  false  true


equals是方法,而==是运算符,当一个类没有重写equals方法时,默认的是object中的equals方法,而Object中的equals方法其实就是用==来判断的。
我们可重写 equals 方法

public class Student {  
    String s;  
    public Student(String str){  
    this.s = str;
    }  
    public  boolean equals(Object a){  
        if(s == "a") {
        return true;
    } else
    return false;  
    }  

public class Test {
public static void main(String [] args) {
Student str = new Student("a");  
Student str1 = new Student("b");  
boolean b = str.equals(str);  
boolean b1 = str1.equals(str1);  
boolean b2 = (str == str1);  
System.out.println(b);  
System.out.println(b1);  
System.out.println(b2); 
}
}
结果 true  false   false

分享到:
评论
2 楼 hekai1990 2012-05-03  
hekai1990 写道
受教了...

1 楼 hekai1990 2012-05-03  
受教了...

相关推荐

    java中equals和==的区别

    Java 中 equals 和 == 的区别 Java 中的 equals 和 == 是两个不同的概念,很多开发者容易混淆它们。理解这两个概念的区别是非常重要的,因为它们对编程的正确性和性能都有很大的影响。 首先,我们需要了解 Java ...

    java中equals和==的区别.doc

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

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

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

    java中equals和==的区别.docx

    Java 中 equals 和 == 的区别 Java 中的 equals 和 == 是两个常用的操作符,经常用于比较对象或变量的值。然而,许多开发者不知道它们之间的区别,或者误用它们,导致程序出错。下面我们将详细解释 equals 和 == 的...

    【Java面试题】equals与==的区别

    【Java面试题】equals与==的区别

    java 资料 equals 与== 的区别

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

    equals与==之间的区别

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

    Java 中equals和==的区别.doc

    Java 中equals和==的区别

    java中equals和==的区别-5页.pdf

    java中equals和==的区别-5页.pdf

    hashcode、equals、==总结1简单总结.txt

    hashcode、equals、==总结1简单总结.txt,他们之间的区别

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

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

    java中equals和==的区别.

    在Java编程语言中,`equals()`方法和`==`运算符是用于比较对象的两种不同方式,它们在处理不同类型的数据时有不同的行为。了解这两者的区别对于编写正确的代码至关重要。 `==`运算符: 1. `==`用于比较基本类型的...

    java中equals和==的区别.pdf

    Java中equals和==的区别 Java是一门面向对象的编程语言,它提供了多种运算符和方法来比较对象和变量。在Java中,比较两个对象是否相等时,经常使用到的运算符有"=="和"equals"。虽然两者都可以用于比较,但它们有着...

    浅谈Java中的equals和==Java开发Java经验

    在Java编程语言中,`equals()`方法和`==`运算符是两个经常被用来比较对象是否相等的关键概念。理解它们的区别和用法对于任何Java开发者来说都至关重要,特别是对于那些正在积累Java开发经验的人来说。 首先,让我们...

    java中equals和==的比较.pdf

    在Java编程语言中,`equals()` 和 `==` 都用于比较对象,但它们的用法和含义有所不同。本文将详细解析这两个操作符在Java中的区别,并通过具体的例子进行阐述。 1. `==` 操作符: `==` 在Java中主要用来比较基本...

Global site tag (gtag.js) - Google Analytics