ストリームフィルタを使用してリクエストオブジェクトから2つの日付を取得します。そこでは、それらのオブジェクトを比較して、リストに格納する必要があります。しかし、今私はこのエラーが発生します。それで私を助けてください。どのようにJava 8のストリームフィルタで2つの日付を比較するには?
エラー:
Type mismatch: cannot convert from int to boolean
コード:自身で
List<PlaceBook> filtered = checkInVal.stream().filter(string ->
string.getCheckInDt().compareTo(checkIn) == 0 /* == 0, for example is missing*/).collect(Collectors.toList());
のcompareToはint型の値を返します:あなたは、あなたのフィルタ条件が実際に何であるかを宣言いけない
Date checkIn = req.getCheckIn();
Date checkOut = req.getCheckOut();
List<PlaceBook> filtered = checkInVal.stream().filter(string ->
string.getCheckInDt().compareTo(checkIn)).collect(Collectors.toList());
「compareTo」ではなく「equals」を使用したかったでしょうか? – misko321