当前位置:首页 > Java技术

CompareToBuilder,EqualsBuilder,ToStringBuilder

canca18年前 (2008-09-17)Java技术790

在编码过程中,我们可能经常用到两个对象比较,将对象中的元素转化成字符串等等。现在这些工作已经有相应的包了

import org.apache.commons.lang.builder.CompareToBuilder 
import org.apache.commons.lang.builder.EqualsBuilder 
import org.apache.commons.lang.builder.HashCodeBuilder 
import org.apache.commons.lang.builder.ToStringBuilder 

class LavaLamp implements Comparable{ 
@Property model 
@Property baseColor 
@Property liquidColor 
@Property lavaColor 

def String toString() { 
   return new ToStringBuilder(this). 
       append(this.model). 
    append(this.baseColor). 
    append(this.liquidColor). 
    append(this.lavaColor). 
    toString() 


def boolean equals(obj) { 
     if (!(obj instanceof LavaLamp)) { 
        return false 
     } 
     LavaLamp rhs = (LavaLamp) obj 
        return new EqualsBuilder(). 
            append(this.model, rhs.model). 
            append(this.baseColor, rhs.baseColor). 
            append(this.liquidColor, rhs.liquidColor). 
            append(this.lavaColor,rhs.lavaColor).isEquals() 
  } 
  def int compareTo(obj) { 
     LavaLamp lmp = (LavaLamp)obj 
        return new CompareToBuilder(). 
            append(lmp.model, this.model).append(lmp.lavaColor, this.lavaColor).append(lmp.baseColor, this.baseColor). 
            append(lmp.liquidColor, this.liquidColor). 
            toComparison() 
  } 

扫描二维码推送至手机访问。

版权声明:本文由Ant.Master's Blog发布,如需转载请注明出处。

本文链接:https://iant.work/post/367.html

标签: Java技术
分享给朋友:

“CompareToBuilder,EqualsBuilder,ToStringBuilder ” 的相关文章

对象序列化与反序列化

    序列化,并不是JAVA独有的。因此,在这里我用比较通俗的话说了。序列化就是把一个对象转换成有规则的二进制流。而反序列化就是把有规则的二进制数据重整成一个对象。其好处不难看见:1.可以把一个对象...…

Java语言的反射机制

    由于项目的需要,在项目中要实现即插即用的方式,也就是说可以动态地加载包,不用设置CLASSPATH路径。当项目发布时,不可能要用户来设置环境变量吧!因此,就要用到JAVA的反射机制了。昨天,我是在研究JAVA的...…

JAVA获得一个文件夹大小

在JAVA里没有现成的方法获取一个文件夹的大小,那么我们可以用递归的方法,获取文件夹的大小。    import  java.util.*;  import  java.io.*;  class  GetFileSi…

IM技术(1)

    做项目了,NetCL今天开工了,在这些日子里,我会将自己研究的内容写下来。做个记录,以下是我在网上搜到的。关于管理用户状态的解决方案,当然,我都有一个方案。不过对客户端的任务有点重吧,我方法是客...…

过滤网页HTML标记

JAVA过滤HTML中的所有标记。非常好用!! package canca.regex; import java.util.regex.Matcher;import java.util.regex.Pattern; public class HtmlFilter {  priva…

Java代理详话简说

        Java的代理,使项目实现低藕合成为可能。Spring框架中的AOP,内部就是用Java代理来实现。因此,认识JAVA代理原理对学习学Spring AOP是有密切关系的。    &nb…

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。