目的:

List对象转成Map,List对象转成Set,List对象转成List<参数>,List对象转成List<String>,JDK1.8流式处理

JDK1.8操作,使用lambada表达式处理List

第一步: 数据库获取数据

List<TbmNewsPopularFeelings> tbmNewsPopularFeelingsList = tbmNewsPopFeeMapper.selectList(wrapper);

if (!CollectionUtils.isEmpty(tbmNewsPopularFeelingsList)) {

第二步,List<对象>  转成Map格式,List对象转成Map

    Map<Long, TbmNewsPopularFeelings> resultMap = tbmNewsPopularFeelingsList.stream().collect(Collectors.toMap(TbmNewsPopularFeelings::getNewsId, v -> v, (k1, k2) -> k1));

第三步 List对象转成List<参数>

    List<Long> newsIdLsit = tbmNewsPopularFeelingsList.stream().map(TbmNewsPopularFeelings::getNewsId).collect(Collectors.toList());

    Set newsIdSet = new HashSet();

    newsIdSet.addAll(newsIdLsit);

    if (newsIdSet.size() == 1 && newsIdSet.contains(newsId)) {

        return null;

    } else {

        newsIdSet.remove(newsId);

        return newsIdSet.toString();

    }

}

return null;

第四步,List可以通过group By来改造成一个Map

//Map<公司id,标签列表>  根据公司id分组
Map<String, List<TbmEventTags>> businessIdMap = tbmEventTagsList.stream().collect(Collectors.groupingBy(TbmEventTags::getBusinessId));
List<TbmNewsPopularFeelings> tbmNewsPopularFeelingsList = tbmNewsPopFeeMapper.selectList(wrapper);
if (!CollectionUtils.isEmpty(tbmNewsPopularFeelingsList)) {
Map<Long, TbmNewsPopularFeelings> resultMap = tbmNewsPopularFeelingsList.stream().collect(Collectors.toMap(TbmNewsPopularFeelings::getNewsId, v -> v, (k1, k2) -> k1));
List<Long> newsIdLsit = tbmNewsPopularFeelingsList.stream().map(TbmNewsPopularFeelings::getNewsId).collect(Collectors.toList());
Set newsIdSet = new HashSet();
newsIdSet.addAll(newsIdLsit);
if (newsIdSet.size() == 1 && newsIdSet.contains(newsId)) {
return null;
} else {
newsIdSet.remove(newsId);
return newsIdSet.toString();
}
}
return null;