-4
String serviceClass = railsComponent
.getRailOffer()
.getRailProducts()
.get(0)
.getRailProduct()
.getFareBreakdownList()
.get(0)
.getPassengerFareList()
.get(0)
.getPassengerSegmentFareList()
.get(0)
.getCarrierServiceClassDisplayName();
これは私に有効なserviceClass値を返します。複数のgetメソッドのjava8でのストリームの使用
私はjava8ストリームコンセプトの助けを借りてこのコードを変換したかったのです。
私は[email protected]として私に値を返している
以下String serviceClass = railsComponent.getRailOffer().getRailProducts().stream()
.map(railProcucts -> railProcucts.getRailProduct().getFareBreakdownList().stream()
.map(fareBreakdownType -> fareBreakdownType.getPassengerFareList().stream()
.map(passengerFareType -> passengerFareType.getPassengerSegmentFareList().stream()
.map(segmentFareType -> segmentFareType.getCarrierServiceClassDisplayName())))).findFirst().orElse(null).toString();
てみました。
私は間違って何をしているのか、このケースではどのように適切な価値を得るのか誰かに教えてもらえますか?
あなたが尋ねたものではありませんが、ここでのnullの場合は、nullで 'toString()'を呼び出すと絶対に 'NullPoiinterException'をスローします。 'findFirst()。orElse(null).toString();' – Todd
ここでstreamを使いたいのですが? –
私は複数のヌルチェックを避けたかったのです。これを使用しようとしています。 –