equals()和==的区别

来源:9-9 Java 中的 Object 类 Ⅱ

慕粉4199951

2016-11-15 11:20

equals()和==的区别   请大神举例说明  谢谢

写回答 关注

3回答

  • Bran_Zuo
    2016-12-10 00:32:28
    • 基本数据类型(byte,short,char,int,long,float,double,boolean)之间的比较,应用双等号(==),比较的是他们的值。 

    • 复合数据类型用==比较时,比较的是内存中的存放地址;用equals进行比较时,在没有重写equals方法情况下,比较的还是内存地址,因为Object类的equals方法也是用==进行比较的

    参考:Java中equals和==的区别

    Bran_Z...

    常看到的String类之间的比较,equals方法比较的是值,==比较的是内存地址,因为String重写了Object的equals方法

    2016-12-10 00:45:44

    共 1 条回复 >

  • 喵喵小喵
    2016-11-18 19:52:57

    基本数据类型:==比较的是值是否相等
    引用数据类型:==和equals(没重写的equals)比较的是内存地址,空间地址。(即判断两个对象是否是同一个)

                            重写的equals比较的是内容

    采纳哟哟哟

  • 慕粉1426489165
    2016-11-15 11:54:05

    字符串用.equals(),数字类型用==,例如:

    String name1 = "李晓";

    String name2 = "李晓";

    int number1 = 2;

    int number2 = 2;

    if(name1.equals(name2){System.out.println("他们是相等的")}

    if(number1==number2){System.out.println("他们是相等的")}

Java入门第二季 升级版

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

530653 学习 · 6091 问题

查看课程

相似问题