commons-lang3-3.3.2.jar提供一些基础的、通用的操作和处理
包:org.apache.commons.lang3.builder
CompareToBuilder – 用于辅助实现Comparable.compareTo(Object)方法:
@Override
public int compareTo(Version version) {
return CompareToBuilder.reflectionCompare( this , version);//只比较值 注意对象包含引用对象时,引用对象也需要实现Comparable接口
}
注意:比较之前对象需要序列化,如果对象中含有引用属性变量并没有实现Comparable接口被创建后是无法比较的出现如下错误:
com.class... cannot be cast to java.lang.Comparable 因为实现Comparable接口就是用来制定比较策略,没有策略无法比较
EqualsBuilder – 用于辅助实现Object.equals()方法:
@Override
public boolean equals(Object obj) {//两个对象相等当且仅当每个属性值都相等
return EqualsBuilder.reflectionEquals(this, obj);
}
HashCodeBuilder – 用于辅助实现Object.hashCode()方法:
@Override
public int hashCode() {//根据属性值生成hash码
return HashCodeBuilder.reflectionHashCode(this);
}
ToStringBuilder - 用于辅助实现Object.toString()方法:
@Override
public String toString() {
return ToStringBuilder.reflectionToString(this, ToStringStyle.MULTI_LINE_STYLE);
}
216

被折叠的 条评论
为什么被折叠?



