目的:消除重複的對象,對於重複的對象只保留一個。
1 有一個實體Bean.ExceptionBean 如下,重寫Object的equals() 方法,比較兩個對象是否是同一個對象:
public class ExceptionBean {
private String areaName;
private String groupName;
private int groupNo;
private String lineNo;
private String busJobNo;
private Date anchorTime;
private String faultName;
private String busType;
get/set方法省略
@Override
public boolean equals(Object obj) {
if(obj == null){
return false ;
}
if(this == obj){
return true;
}
ExceptionBean exceInfo = (ExceptionBean)obj;
if(this.getAreaName().equals(exceInfo.getAreaName())){
if(this.getGroupName().equals(exceInfo.getGroupName())){
if(this.getLineNo().equals(exceInfo.getLineNo())){
if(this.getBusJobNo().equals(exceInfo.getBusJobNo())){
if(this.getFaultName().equals(exceInfo.getFaultName())){
return true ;
}
}
}
}
}
return false ;
}
}
2 消除重複的對象,並且只保留一個。
/**
* 剔除重複
* @param falutList
* @return tempFaultList
*/
public static List<ExceptionBean> removeRepeatFalutInfo(List<ExceptionBean> falutList){
List<ExceptionBean> tempFaultList = new ArrayList<ExceptionBean>() ;
for(Object o:falutList){
if(!tempFaultList.contains(o)){
tempFaultList.add((ExceptionBean)o);
}
}
return tempFaultList;
}
OK,結束!