Java 流中的If语句
是否可以在下面的地图中使用if语句条件Java 流中的If语句,java,java-stream,Java,Java Stream,是否可以在下面的地图中使用if语句条件 public Map<LocalDate, Double> avarageTemperatures(LocalDate dateFrom, LocalDate dateTo) { Map<LocalDate, Double> tempAverage = Data.stream() .collect(Collectors.groupingBy(Weather::getDateTime,
public Map<LocalDate, Double> avarageTemperatures(LocalDate dateFrom, LocalDate dateTo) {
Map<LocalDate, Double> tempAverage = Data.stream()
.collect(Collectors.groupingBy(Weather::getDateTime,
Collectors.averagingDouble(Weather::getTemp)));
System.out.println("average: " + tempAverage);
return tempAverage;
}
其中weatherData
是一个包含日期和温度的数组列表。我的天气课:
public class Weather {
private LocalDate dateTime;
private LocalTime time;
private double temperature;
private String tag;
//setter, getter, constructor
}
日期为1946-01-15,温度为-0.3。您可以使用:
public class Weather {
private LocalDate dateTime;
private LocalTime time;
private double temperature;
private String tag;
//setter, getter, constructor
}
weatherData.stream().filter(weather -> !weather.getDateTime().isAfter(dateTo) &&
!weather.getDateTime().isBefore(dateFrom))...