Java 8 : extract a substream from a stream

标签 java java-8 java-stream

我有一个对象流,我需要从中提取一个只有部分对象属性的流。

例如,来自 Stream<Car> , 我需要提取一个 Stream<CarDetails> .

Car {
   String name;
   String model;
   Engine e;
   CarType t;
   ...
}

我想提取一个Stream类型为 CarDetails 的对象:

CarDetails {
   String name;
   String model;
}

最佳答案

你可以用 map 实现这个,假设你有所需的 CarDetails 构造函数:

Stream<Car> cars = ...
Stream<CarDetails> details = cars.map(c -> new CarDetails(c.getName(),c.getModel()));

关于Java 8 : extract a substream from a stream,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42203402/

相关文章:

java - 在某些情况下使用 Java Stream 计算唯一字符并验证 String

java - Android/Firebase - 检查您是否订阅了主题

java - 在 JAVA 中格式化 Date.toString() 输出

java - 如何从 flatMap 创建 HashMap?

Java 8 Streams.reduce() 与组合器

java - 将 Map<Integer, Map<String, Boolean>> 展平为列表 <Boolean>

java - 有没有人在巴克明斯特有真实的经验?

java - 队列上 IBM MQ 的 IsOpen 和 OpenStatus 属性有何区别?

java 8 switch case default with break for class type

java - 将字符串拆分为列表、排序并保持顺序