Java易混小知识——equals方法和==的区别

一、equals方法和==的区别

  1.equals是String对象的方法,可以通过".“调用。

  2.== 是一个运算符。

二、常用的比较用法

  1、基本数据类型比较。

    equals和==都比较两个数值 是否相等。相等即为true,不相等则为false。

  2、引用对象的比较。

    equals和==都比较栈内存中的地址是否相等。相等即为true,不相等则为false。

三、易错点

  1、String是一个特殊的引用类型。对于两个字符串的比较,不管是==还是equals这两者比较的都是字符串是否相同。

  2、当创建两个String对象时,内存中的地址是不相同的,你可以赋相同的值。

    所以字符串的内容相同。引用的地址不一定相同。

  3、基本数据类型比较(String除外)==和equals都是比较数值。

四、例子演示

  比较String对象:Ex

  

public class TestEquals {

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

  基本数据类型此处省略(两者效果一样)。

时间: 2024-11-08 12:10:15

Java易混小知识——equals方法和==的区别的相关文章

Java中的“==操作符”和equals方法有什么区别

Java中的"=="和equals方法究竟有什么区别? 1.==操作符 "=="操作符专门用来比较两个变量的值是否相等,也就是用于比较变量所对应的内存中所存储的数值是否相同,要比较两个基本类型的数据或两个引用变量是否相等,只能用==操作符. 如果一个变量指向的数据是对象类型的,那么,这时候涉及了两块内存,对象本身占用一块内存(堆内存),变量也占用一块内存,例如: Objet obj = new Object(); 变量obj是一个内存,new Object()是另一

反射小知识 【方法篇】

reflect_method html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legen

Java连载56-toSting方法和equals方法

Java连载56-toSting方法和equals方法一.关于object中的toString?方法: 1.SUN公司在Object类中设计toString方法的目的:返回java对象的字符串的表示形式. 2.在现实的开发过程中,Object里面的toString方法已经不够用了,因为Object的toString方法实现?的结果不满意.Object中的toString方法实现的结果不满意.Object中的呢toString?方法要被重写了. 3.println打印的如果是对象的话,那么就会默认

Java:Object类的equals()方法 如何编写一个完美的equals()方法

一  代码实例: package freewill.objectequals;  /** * @author freewill * @see Core Java page161 * @desc getClass实现方式,另有instance of实现方式,根据不同场景使用. */  public class Employee {      private String name;      private int salary;      private String hireDay;     

Java 重写hashCode 方法和equals方法

package Container; import java.util.HashSet; import java.util.Iterator; /* Set 元素是无序的(存入和取出的顺序不一定一致),元素不可以重复 |---HashSet:底层数据结构是哈希表 | HashSet是如何保证元素唯一性呢? | 是通过两个方法来完成的 hashCode 和 equals来完成的 | 如果元素的hashCode值相同,才会判断 equals 是否为true | 如果hashCode值不相同,不会调用

理解Java中的hashCode和equals 方法

在Java里面所有的类都直接或者间接的继承了java.lang.Object类,Object类里面提供了11个方法,如下: Java代码   ```` 1,clone() 2,equals(Object obj) 3,finalize() 4,getClass() 5,hashCode() 6,notify() 7,notifyAll() 8,toString() 9,wait() 10,wait(long timeout) 11,wait(long timeout, int nanos) ``

java基础:Object的equals方法

一:看第一个例子 输出结果: false false cat1 == cat2 很简单,他们不是同一对象,有不通的存储地址. 但是cat1.equals(cat2)为什么是false呢.因为cat是对象,这里用的是父类的equals方法 而Object类equals方法的实现为: <strong><span style="font-size:18px;"> public boolean equals(Object obj) { return (this == o

电灯节电小知识的方法大全(转载)

电灯节电小知识 时间:2015-05-10 09:44:11编辑:电工栏目:用电常识 导读:有关电灯节电的小知识,包括要采用白炽灯,加装调光节电装置,楼道照明尽量采用节电装置,及时关掉不要的电灯,并选用节能灯具等,电灯节电就要从小事从细节做起. 电灯节电小知识 1.床头灯.房厅吊灯如采用白炽灯,应加装调光节电装置: 2.楼道照明尽量采用节电装置: 3.房内没人时,记着关熄房内不必要的电灯,尽量选用节能灯具. 猜你喜欢: 电视机节电小知识 电风扇节电小知识 电熨斗节电小知识 电冰箱节电小知识三要素

Java基础之&quot;==&quot;和 和 equals 方法的区别

一."=="操作符 ==操作符专门用来比较两个变量的值是否相等,也就是用于比较变量所对应的内存中所存储的数值是否相同,要比较两个基本类型的数据或两个引用变量是否相等,只能用==操作符. 如果一个变量指向的数据是对象类型的,那么,这时候涉及了两块内存,对象本身占用一块内存(堆内存) ,变量也占用一块内存,例如 Objet obj = new Object();变量 obj 是一个内存,new Object()是另一个内存,此时,变量 obj 所对应的内存中存储的数值就是对象占用的那块内存