java list 字段去重_java list 泛型去重复 或指定字段 去重

public class OptionMonitoringData extends BaseEntity

{

private static final long serialVersionUID = 1L;

/** null */

private Long id;

/** contractnum */

private String contractnum;

/** SZ-REV */

private String sz_rev;

/** SZ-Esend */

private String szEsend;

/** 委托处理时间 */

private String commissionProcessingTime;

/** RespRev */

private String respRev;

/** SZ-EndSend */

private String szEndsend;

/** 确认处理时间 */

@Excel(name = "确认处理时间")

private String confirmTime;

/** 撮合耗时 */

private String matchTime;

/** 总耗时 */

private String totalTime;

public void setId(Long id)

{

this.id = id;

}

public Long getId()

{

return id;

}

public void setContractnum(String contractnum)

{

this.contractnum = contractnum;

}

public String getContractnum()

{

return contractnum;

}

public String getSz_rev() {

return sz_rev;

}

public void setSz_rev(String sz_rev) {

this.sz_rev = sz_rev;

}

public void setSzEsend(String szEsend)

{

this.szEsend = szEsend;

}

public String getSzEsend()

{

return szEsend;

}

public void setCommissionProcessingTime(String commissionProcessingTime)

{

this.commissionProcessingTime = commissionProcessingTime;

}

public String getCommissionProcessingTime()

{

return commissionProcessingTime;

}

public void setRespRev(String respRev)

{

this.respRev = respRev;

}

public String getRespRev()

{

return respRev;

}

public void setSzEndsend(String szEndsend)

{

this.szEndsend = szEndsend;

}

public String getSzEndsend()

{

return szEndsend;

}

public void setConfirmTime(String confirmTime)

{

this.confirmTime = confirmTime;

}

public String getConfirmTime()

{

return confirmTime;

}

public void setMatchTime(String matchTime)

{

this.matchTime = matchTime;

}

public String getMatchTime()

{

return matchTime;

}

public void setTotalTime(String totalTime)

{

this.totalTime = totalTime;

}

public String getTotalTime()

{

return totalTime;

}

@Override

public String toString() {

return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)

.append("id", getId())

.append("contractnum", getContractnum())

.append("sz_rev", getSz_rev())

.append("szEsend", getSzEsend())

.append("commissionProcessingTime", getCommissionProcessingTime())

.append("respRev", getRespRev())

.append("szEndsend", getSzEndsend())

.append("confirmTime", getConfirmTime())

.append("matchTime", getMatchTime())

.append("totalTime", getTotalTime())

.toString();

}

//重点 要重写 equals 与 hashCode 方法

@Override

public boolean equals(Object obj) {

if(this == obj){

return true;//地址相等

}

if(obj == null){

return false;//非空性:对于任意非空引用x,x.equals(null)应该返回false。

}

if(obj instanceof OptionMonitoringData){

OptionMonitoringData other = (OptionMonitoringData) obj;

//需要比较的字段相等,则这两个对象相等

if(equalsStr(this.sz_rev, other.sz_rev)){

return true;

}

}

return false;

}

private boolean equalsStr(String str1, String str2){

if(StringUtils.isEmpty(str1) && StringUtils.isEmpty(str2)){

return true;

}

if(!StringUtils.isEmpty(str1) && str1.equals(str2)){

return true;

}

return false;

}

@Override

public int hashCode() {

int result = 17;

result = 31 * result + (sz_rev == null ? 0 : sz_rev.hashCode());

return result;

}

//去重复代码

//原list

List readResult = list数据;

//去重复的list

List listWithoutDuplicates = readResult.stream().distinct().collect(Collectors.toList());

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值