3
私はオブジェクトのストリームを持っています。オブジェクトの属性のうちのいくつかだけを持つストリームを抽出する必要があります。Java 8:ストリームからサブストリームを抽出する
例えば、Stream<Car>
から、私はStream<CarDetails>
を抽出する必要があります。
Car {
String name;
String model;
Engine e;
CarType t;
...
}
私はタイプCarDetails
を持つオブジェクトのStream
を抽出したい:
CarDetails {
String name;
String model;
}
代わりにa CarDetailsFactory: 'cars.map(CarDetailsFactory :: createCarDe尾) ' または' Car'が提供する方法: 'cars.map(Car :: createDetailsObject)' –
ありがとうございます。ちょっと私の質問を少しだけ拡張してください。もし 'Car.model'が'Set'となり、私はまだ個々のモデルと車の名前で 'ストリーム'を望んでいます。 –
Sneha
@Snehaこの場合、 'flatMap' - ' cars.flatMap(c-> c.getModels()。stream() ).map(m->新しいCarDetails(c.getName()、m))) '。 – Eran