博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
list的去重,需要重写equals与hashCode
阅读量:3766 次
发布时间:2019-05-22

本文共 1463 字,大约阅读时间需要 4 分钟。

去重方法一:

set去重

package com.hzbank.counter.bean;import com.fasterxml.jackson.annotation.JsonFormat;public class ReportFormsDialogue {    private String name;    private String usernameId;    public String getName() {		return name;	}	public void setName(String name) {		this.name = name;	}	public String getUsernameId() {		return usernameId;	}	public void setUsernameId(String usernameId) {		this.usernameId = usernameId;	}    @Override    public boolean equals(Object obj) {        ReportFormsDialogue s=(ReportFormsDialogue)obj;        return usernameId.equals(s.usernameId) && name.equals(s.name);    }    @Override    public int hashCode() {        String in = usernameId + name;        return in.hashCode();    }}
public class Test {   public static void main(String[] args) { List
stu = new ArrayList
(); stu.add(new ReportFormsDialogue("1","yi")); stu.add(new ReportFormsDialogue("3","san")); stu.add(new ReportFormsDialogue("3","san")); stu.add(new ReportFormsDialogue("2","er")); stu.add(new ReportFormsDialogue("2","er")); //set集合保存的是引用不同地址的对象 Set
ts = new HashSet
(); ts.addAll(stu); for (ReportFormsDialogue reportFormsDialogue: ts) { System.out.println(reportFormsDialogue. getName()+"-"+reportFormsDialogue.getUsernameId()); } }}

第二种方法:

使用distinct关键词

@Select(value = {            ""    })    List
getTotalChartByAll(@Param("name")String name,@Param("usernameId")String usernameId);

转载地址:http://moipn.baihongyu.com/

你可能感兴趣的文章
Maven分模块构建项目
查看>>
MyBatis初识
查看>>
MyBatis【进阶详解】
查看>>
面试题集锦(七)
查看>>
注解开发——Spring整合dao/service/web
查看>>
架构的演进
查看>>
Elastic-Job的基础使用
查看>>
策略过滤器的灵活性分析
查看>>
POI的使用
查看>>
Anaconda和PyCharm的下载、安装和配置
查看>>
Mockito单元测试简述
查看>>
GUAVA的常用方法汇总
查看>>
装饰器和门面设计模式介绍
查看>>
创建型模式——克隆模式
查看>>
JVM关闭和Hook钩子
查看>>
线程中断处理
查看>>
消息队列积压问题处理
查看>>
并行流使用注意事项
查看>>
泛型擦除机制及相关问题
查看>>
Jackson日期反序列化时区问题
查看>>