关于EqualsBuilder类的理解

apache的commons-lang包提供了一个EqualsBuilder类,提供了基本属性、数组、对象等比较操作的封装,可以辅助实现对象的equals(Object)方法。

  • pom.xml文件添加apache的commons-lang包的依赖
		<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 -->
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-lang3</artifactId>
			<version>3.9</version>
		</dependency>

关于EqualsBuilder类的使用,官方的API文档提供了样例:

public boolean equals(Object obj) {
    
    
   if (obj == null) {
    
     return false; }
   if (obj == this) {
    
     return true; }
   if (obj.getClass() != getClass()) {
    
    
     return false;
   }
   MyClass rhs = (MyClass) obj;
   return new EqualsBuilder()
                 .appendSuper(super.equals(obj))
                 .append(field1, rhs.field1)
                 .append(field2, rhs.field2)
                 .append(field3, rhs.field3)
                 .isEquals();
  }

猜你喜欢

转载自blog.csdn.net/qq_46043634/article/details/105187481