开心一笑: 会买水果的狗狗

    关注微信公众号

    QQ群:831045818

    app下载

    当前位置:首页> java > 技术文档 > 正文
    java list 泛型去重复 或指定字段 去重
    发布时间:2020-08-05 16:57:10.0 浏览次数:
    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<OptionMonitoringData> readResult = list数据;
    
    //去重复的list 
    List<OptionMonitoringData> listWithoutDuplicates = readResult.stream().distinct().collect(Collectors.toList());


    关注"都市百货" 了解南陵

    微信咨询wanglf2r(不拉群 发广告者勿加)

    0
    0
    上一篇:商品住宅销售价目表(北泰御府8#、10#) 上一篇:南陵许镇CNG加气站暂停加气,本月8日恢复

    评论已有0

    提交评论

    热门评论

    南陵新闻
    公示公告
    常用查询
    风光南陵
    走出南陵
    友情链接