JAVA认证开源技术:Java的对象equals方法

时间:2023-03-04 01:47:48 JAVA认证 我要投稿
  • 相关推荐

JAVA认证开源技术:关于Java的对象equals方法

  在学习JAVA认证过程中,每个人会遇到每个人不同的问题,或小或大,下面yjbys小编为大家分享的是关于Java的对象equals方法,希望对大家学习JAVA有帮助!

  不是所有的equals都是比较整个对象的。

  #1.普通Object类:

  先看源码:

  public boolean equals(Object obj) {

  return (this == obj);

  }

  看到了没,用"==",比较的是对象引用,也就是地址。假如两个对象传入的参数一样,但是都用new去创建,地址就不同了,那么用equals返回的就是false.

  #2.String类:

  先看源码:

  public boolean equals(Object anObject) {

  if (this == anObject) {

  return true;

  }

  if (anObject instanceof String) {

  String anotherString = (String)anObject;

  int n = count;

  if (n == anotherString.count) {

  char v1[] = value;

  char v2[] = anotherString.value;

  int i = offset;

  int j = anotherString.offset;

  while (n-- != 0) {

  if (v1[i++] != v2[j++])

  return false;

  }

  return true;

  }

  }

  return false;

  }

  比较的是内容,所以只要内容一样,用new去创建的两个String对象,调用equals返回true.

  #3.Integer类

  先看源码:

  public boolean equals(Object obj) {

  if (obj instanceof Integer) {

  return value == ((Integer)obj)。intValue();

  }

  return false;

  }

  一样是比较内容。

【JAVA认证开源技术:Java的对象equals方法】相关文章:

SUN JAVA认证介绍12-18

sun java认证报考指南03-08

java认证考试培训内容03-27

sun认证java程序员须知Java日志框架03-30

Java认证经典面试题目03-31

sun认证java基础模拟试题03-30

java认证考试试题及答案03-04

JAVA面向对象的三大特性02-26

2016年Java认证考试题03-08

2016最新Java认证笔试题及答案01-21