我使用流过滤器从请求对象中获取两个日期。在那里,我必须比较这些对象,然后收集它们存储在列表中。但现在我得到了这个错误。请帮帮我。
错误:
类型不匹配:无法从int转换为布尔值
代码:
Date checkIn = req.getCheckIn();
Date checkOut = req.getCheckOut();
List<PlaceBook> filtered = checkInVal.stream().filter(string ->
string.getCheckInDt().compareTo(checkIn)).collect(Collectors.toList());
答案 0 :(得分:4)
你没有声明你的过滤条件实际是什么:
List<PlaceBook> filtered = checkInVal.stream().filter(string ->
string.getCheckInDt().compareTo(checkIn) == 0 /* == 0, for example is missing*/).collect(Collectors.toList());
compareTo本身返回一个int值,该值不能转换为boolean,这是filter所必需的。
BTW&#39; string&#39;在过滤器中不是一个好名字。