1数据源
private List<OfficeDto> officeList=officeMapper.selectOffliceList();
2 重写对象OfficeDto里面的equals和hashcode方法
public class OfficeDto {
@ApiModelProperty(value="打卡地点id",dataType="Integer",name="officeId")
private Integer officeId;
@ApiModelProperty(value="打卡地点名称",dataType="String",name="deviceName")
private String officeName;
public Integer getOfficeId() {
return officeId;
}
public void setOfficeId(Integer officeId) {
this.officeId = officeId;
}
public String getOfficeName() {
return officeName;
}
public void setOfficeName(String officeName) {
this.officeName = officeName;
}
public OfficeDto(Integer officeId, String officeName){
this.officeId=officeId;
this.officeName=officeName;
}
public OfficeDto(){ }
@Override
public boolean equals(Object o) {
if (this == o)
return true;
if (o == null || getClass() != o.getClass())
return false;
OfficeDto officeDto = (OfficeDto) o;
return Objects.equals(officeId, officeDto.officeId) && Objects.equals(officeName, officeDto.officeName);
}
@Override
public int hashCode() {
return Objects.hash(officeId, officeName);
}
}
3去重officeList
officeList=officeList.stream().distinct().collect(Collectors.toList());
4单纯一个字段distinct不需要重写,多字段需要重写对象equal和hashcode方法