java中equal与==的区别

介绍一下java中==和equals方法的区别。在初学java时需要弄清楚这个问题,以免在今后在编码过程中出现一些低级错误。

操作方法

  • 01

    首先,在eclipse中运行图示所示代码,通过结果对“==”与equals()方法就行分析比较,结果如图所示。

  • 02

    通过结果,关系操作符“==”可以做出如下总结: (1)对于基本数据类型:“==”根据基本数据类型的值判断是否相等,相等返回true,反之返回false。注意:两端数据类型可以不同,在不同的情况下也可以返回true; (2)引用数据类型:“==”比较的是引用类型变量的地址值是否相等,相等返回true,反之false。

  • 03

    equals()方法总结如下: (1)equals方法是基类Object中的方法(Object类是所有java类的根父类),因而只能处理引用类型变量; (2)如图所示,通过查看源码,在Object类,发现equals()仍然比较的是两个引用变量的地址值是否相等,相等则返回true,反之false; (3)如图所示,像String 包装类 Flie类 Date类这些类重写了Object类的equals()方法,比较是两个对象的“实体内容”是否完全相同,相同则返回true,反之false。

(0)

相关推荐

  • java中抽象类和接口的区别

    java中抽象类和接口的区别是什么?java 抽象类和java接口类有什么区别?java中抽象类与接口有哪些区别?Java中抽象类和接口的区别?Java中抽象类与接口有什么区别?Java中抽象类与接口 ...

  • java中4种修饰符访问权限的区别及详解全过程

    java中4中修饰符分别为public.protect.default.private,他们这就说明了面向对象的封装性,所以我们要适用他们尽可能的让权限降到最低,从而安全性提高. 下面详细讲述下它们的 ...

  • Java中final、finally、finalize的区别

    Java中final.finally.finalize的区别与用法,困扰了不少学习者,下面我们就这个问题进行一些探讨,希望对大家的学习有所帮助. 操作方法 01 简单区别: final用于声明属性,方 ...

  • Java中 a++ 和 ++a 的区别

    JAVA是一种开发代码语言,那么JAVA中的a++和++a有什么区别呢? 操作方法 01 先说说两者之间的共同点,不管是a++还是++a,在编辑代码的时候都是运用a+1的代码进行编程的. 02 说说两 ...

  • java 中堆和栈的区别方法

    一直以来对java中堆和栈都有点模糊:现在终于搞明白啦 特点: 1. 栈的特点是 : 容量小 速度快 适合存放小型数据 如基本数据类型和对象类型的引用 在栈中变量直接指向存放变量值的空间 对于对象引用 ...

  • java中&与&&的区别

    java中&与&&的区别是什么?小编来告诉你,请看下文. 操作方法 01 最简单的区别是,&无论str != null 是否为true,程序都会执行,而&&am ...

  • java中的异常处理机制

    Throwable: 有两个重要的子类:Exception(异常)和 Error(错误),二者都是 Java 异常处理的重要子类,各自都包含大量子类. Error(错误):是程序无法处理的错误,表示运 ...

  • JAVA中的语句都有哪些,怎么用?

    我们说任何程序语言,都是由一个个条件,用一定的语言习惯串起来的,那么JAVA中都有哪些语句呢,我们一起来看一下. 一.复合语句 01 同C语言或其他语言相同,Java语言的复合语句是以整个块区为单位的 ...

  • java中的加号的作用

    java中加号+一般对新手来说,可能不像减号,乘除那样好理解,java中的加号有两个意思,一个是常见的算术运算中的相加的意思,另一个是连接符的作用. java中的加号:相加作用 01 先来说下java ...