java8マップ動作例

  • オブジェクトのプロパティの集合を抽出
    • 印刷部数
      list.stream().map(Location::getId).forEach(System.out::println);
      
    • プロパティリストのコレクションを回し
      List<String> skus = list.stream().map(Goods::getSku).collect(Collectors.toList());
      
  • リストターンセット
    Set<String> kSet = keys.stream().map(k -> k).collect(Collectors.toSet());
    
  • リストターンマップ
    Map<String,InventoryAdjustment>  adjustments = list.stream()
                     .map(InventoryChange::getAdjustment).collect(Collectors.toList())
                     .stream().collect(Collectors.toMap(InventoryAdjustment::getCreatedAt, adjustment->adjustment,(key1, key2)->key1));
    
  • リスト重複(異なります())
    List<Integer> goodsIds = list.stream().map(OrderDetail::getGoodsId).distinct().collect(Collectors.toList());
    
  • 内部動作データ
    List<MiddleRedisSkuStock> skuStockList = values.stream().filter(StringUtils::isNotBlank).map(
                        value -> JSON.parseObject(value, MiddleRedisSkuStock.class)
                ).collect(Collectors.toList());
    
  • 数値計算
    • BigDecimalの合計
      BigDecimal	amount = list.stream().map(OrderDetail::getAmount).reduce(BigDecimal.ZERO,BigDecimal::add);
      
    • Integert合計
      list.stream().mapToInt(SalesOrderDetail::getGoodsSum).sum();
      
    • プロパティの最小値のコレクションを取得します。
      	BigDecimal minUnitPrice = list.stream().map(GoodsSku::getUnitPrice).min((u1, u2)->u1.compareTo(u2)).get();
公開された16元の記事 ウォンの賞賛0 ビュー2468

おすすめ

転載: blog.csdn.net/dengdai123654/article/details/103951399