需求:
根据List 过滤 想要的数据 我这边的需求是根据这个list 过滤字段PartyType中为 代理人 法人 自然人 其他组织
描述
我们通过service调用jdk8 新特性的list 获取到根据id返回的List
实体类:
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@ApiModel("xxxxx")
public class AdministrationArbitrament extends BaseModel {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@ApiModelProperty(value = "主键")
@JsonSerialize(using = ToStringSerializer.class)
@TableId
private Long id;
/**
* 案件标题
*/
@ApiModelProperty(value = "案件标题")
private String title;
/**
* 是否优秀案例:1.是,2.否
*/
@ApiModelProperty(value = "是否优秀案例:1.是,2.否")
private Integer excellent;
/**
* 是否经典案例:1.是,2.否
*/
@ApiModelProperty(value = "是否经典案例:1.是,2.否")
private Integer classic;
/**
* 案件类型
*/
@ApiModelProperty(value = "案件类型(行政复议,行政应诉,行政裁决,行政赔偿,行政集复)")
private String caseType;
/**
*案件时间
*/
@ApiModelProperty(value = "案件时间")
@JsonFormat(pattern = DateUtil.DATETIME_FORMAT)
private Date caseTime;
/**
* 请求类型
*/
@ApiModelProperty(value = "请求类型")
private String requestType;
/**
* 负责人
*/
@ApiModelProperty(value = "负责人")
private String principal;
/**
* 修改时间
*/
@ApiModelProperty(value = "修改时间")
@JsonFormat(pattern = DateUtil.DATETIME_FORMAT)
private Date updateTime;
/**
* 当事人类型
*/
@ApiModelProperty(value = "当事人类型(代理人 法人 自然人 其他组织)")
private String partyType;
}
根据实体类中的 当事人类型 进行区分list
List<AdministrationArbitrament> arbitrament = administrationArbitramentService.list(Wrappers.<AdministrationArbitrament>lambdaQuery()
.in(AdministrationArbitrament::getId, idList));
这个时候 就用到了!!!.stream().filter()这个好东西!!
List<AdministrationArbitrament> aa = arbitrament.stream().filter(test -> test.getPartyType().equals("代理人")).collect(Collectors.toList());
List<AdministrationArbitrament> bb = arbitrament.stream().filter(test -> test.getPartyType().equals("法人")).collect(Collectors.toList());
List<AdministrationArbitrament> cc = arbitrament.stream().filter(test -> test.getPartyType().equals("自然人")).collect(Collectors.toList());
List<AdministrationArbitrament> dd = arbitrament.stream().filter(test -> test.getPartyType().equals("其他组织")).collect(Collectors.toList());
这样我们就获取到了我们想要的数据
呐 我们就获取到我们根据 PartyType 这个字段想要的数据了