stream流的使用

//jdk list-> map 1
Map<String, Sequence> sequenceMap = sequences.stream().collect(Collectors.toMap(Sequence::getqKey, Function.identity()));
//jdk list-> map 2
List<String> list = capList.stream().map(Quotamap::getName).collect(Collectors.toList())
//jdk 筛选 list-> List
List<Quotamap> partL = allQuotamaps.stream().filter(a->"inds".equalsIgnoreCase(a.getMaptype())).collect(Collectors.toList());
//分组
Map<Integer, List<Apple>> groupBy = appleList.stream().collect(Collectors.groupingBy(Apple::getId));
//过滤出符合条件的数据
List<Apple> filterList = appleList.stream().filter(a -> a.getName().equals("香蕉")).collect(Collectors.toList());
//计算 总金额
BigDecimal totalMoney = appleList.stream().map(Apple::getMoney).reduce(BigDecimal.ZERO, BigDecimal::add);
System.err.println("totalMoney:"+totalMoney); 
//计算 数量
int sum = appleList.stream().mapToInt(Apple::getNum).sum();
    //stream方法
    private static <T> Predicate<T> distinctByKey(Function<? super T, ?> keyExtractor) {
        Set<Object> seen = ConcurrentHashMap.newKeySet();
        return t -> seen.add( keyExtractor.apply( t ) );
    }
    //去重
 collect = list.stream().filter( distinctByKey( Product::getName ) ).collect( Collectors.toList() );
                    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值