Java8新特性lambda表达式与集合在日常应用实例

java8新特性lambda和集合搭配使用,在一定程度上使代码更加简洁,能用少量代码实现了一个方法的功能,特别是搭配Hutool(糊涂工具)使用的时候。对于新手可能阅读上有些障碍,但整个团队能够熟悉应用的情况下,值得大量推广。以下是平时的一些实例应用,希望能够从中得到些启发:
匹配集合元素,对匹配上的设置值为true
​​​​​​​public List<SysCountry> doSysCountrySelected(List<SysCountry> sysCountryList, String countrySelected) {
    if (StringUtils.isNotBlank(countrySelected)) {
        String[] selectedArr = countrySelected.split(",");
        //
        sysCountryList.forEach(country -> {
            if (ArrayUtil.contains(selectedArr, country.getCountryCode())) {
                country.setFlag(true);
            }
        });
    }
    return sysCountryList;
}

对列表数据组织成某种格式串

 List<SysAttachment> sysAttachments = sysAttachmentService.selectSysAttachmentList(sysAttachment);      
            //处理成#id1##id2#
            fileIds = sysAttachments.stream().map(att -> "#" + att.getAttId() + "#").collect(Collectors.joining());

两个列表的元素进行遍历匹配

public boolean checkProductCountryExisted(BasicProductZone basicProductZone) {
        BasicProductZone productZone = new BasicProductZone();
        productZone.setProductId(basicProductZone.getProductId());
        List<BasicProductZone> zoneList = basicProductZoneMapper.selectBasicProductZoneList(productZone);
        String[] countryArr = basicProductZone.getCountryCode().split(",");
        boolean match = zoneList.stream().anyMatch(zone -> {
            for (String country : countryArr) {
                if (zone.getCountryCode().contains(country)) {
                    //国家已经存在(使用过了)
                    return true;
                }
            }
            //国家没被用过
            return false;
        });
        return match;
    }

未完待续.....

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值