Java中==符号与equals()的使用详解(测试两个变量是否相等)
2017-07-04 08:49
726 查看
Java 程序中测试两个变量是否相等有两种方式:一种是利用 == 运算符,另一种是利用equals()方法。
当使用 == 来判断两个变量是否相等时,如果两个变量是基本类型变量,且都是数值类型(不一定要求数据类型严格相同),则只要两个变量的值相等,就返回true。
但是对于两个引用类型变量,只有它们指向同一个对象时, == 判断才会返回true。 == 不可用于比较类型上没有父子关系的两个对象。
很多书上说equals()方法是判断两个对象的值相等。这种说法不准确。实际上equals()方法是Object类提供的一个实例方法,因此所有的引用变量都可以调用该方法来判断是否与其它引用变量相等。但是使用这个方法判断两个对象相等的标准与使用 == 运算符没有区别,同样要求两个变量指向同一个对象才会返回true。因此这个Object类提供的equals()方法没有太大的实际意义,如果希望采用自定义的相等标准,则可采用重写equals方法来实现。
String已经重写了Object的equals()方法,String 的equals()方法判断两个字符串相等的标准是:只要两个字符串所包含的字符序列相同,通过equals()比较将返回true,否则返回 false。
如下列程序所示:
public class EqualTest { public static void main(String[] args) { int num1 = 65; float num2 = 65.0f; //将输出true System.out.println("65和65.0f是否相等?"+(num1==num2)); char ch = 'A'; //将输出true System.out.println("65和‘A'是否相等?"+(num1==ch)); String str1 = new String("hello"); String str2 = new String("hello"); //将输出false System.out.println("str1和str2是否相等?"+(str1==str2)); //将输出true System.out.println("str1和str2是否相等?"+str1.equals(str2)); } }
程序运行结果如图:
以上这篇Java中==符号与equals()的使用详解(测试两个变量是否相等)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
- 浅谈java中BigDecimal的equals与compareTo的区别
- 详解java中保持compareTo和equals同步
- java中equals和等号(==)的区别浅谈
- java String 类的一些理解 关于==、equals、null
- 基于Java字符串 "==" 与 "equals" 的深入理解
- C#中的Equals、RefrenceEquals和==的区别与联系
- Java中==与equals的区别小结
- java中"==" 与equals方法的使用
- java equals和=,==的区别详细介绍
- Java中比较运算符compareTo()、equals()与==的区别及应用总结
相关文章推荐
- java中需要用equals来判断两个字符串值是否相等
- JAVA Android 字符串是否相等使用equals方法
- Java学习笔记33. 比较两个数组是否相等 Arrays.equals(A,B)方法
- JAVA Android 字符串是否相等使用equals方法
- java中需要用equals来判断两个字符串值是否相等
- 第2章 Java编程基础——FAQ2.21 ==和equals()都可用于比较两个操作数是否相等, 它们有什么区别吗?
- java中需要用equals来判断两个字符串值是否相等
- 深入java的equals方法,怎么比较两个对象的内容是否相等?对象的内容指的是什么?
- toCharArray()方法 和 Java中比较两个字符串是否相等equals方法
- java中需要用equals来判断两个字符串值是否相等
- Java用重载的equals()判断实例变量是否相等
- C#使用Equals()方法比较两个对象是否相等的方法
- java 反射比较两个类型相同的对象 内部的变量是否相等
- Java 实例 - 测试两个字符串区域是否相等
- Java中,比较两个字符串引用变量是否相等
- java 判断两个对象是否相等 equals 和 hashcode() 的必要性
- Java 实例 - 测试两个字符串区域是否相等
- Java中判断对象是否相等的equals()方法使用教程
- java 判断两个对象是否相等 equals 和 hashcode() 的必要性
- Java中如何判断两个对象是否相等(Java equals and ==)