Cześć wszystkim !
Mam 2 klasy: Car i DoubleCar z jednym polem price. Chciałbym najlepiej w strumieniu (ale nie wiem czy to możliwe), ewentualnie inaczej stworzyć listę obiektów DoubleCar w taki sposób, że iterując po liście obiektów Car obiekt DoubleCar będzie tworzony przez sume wartości price z aktualnego obiektu Car i wartości price z kolejnego obiektu Car na liście.
@AllArgsConstructor
public class Car {
int price;
}
@Value
public class DoubleCar {
int price;
public static DoubleCar createDoubleCar(int price1, int price2){
return new DoubleCar(price1 + price2);
}
}
public class Main {
public static void main(String[] args) {
List<Car> cars = List.of(new Car(1), new Car(2), new Car(1), new Car(1));
List<DoubleCar> doubleCars = cars.stream()
//tu DoubleCar.createDoubleCar(car.price, car.price) w drugim argumencie powinno znależć się
// price z kolejnego obiektu Car
.map(car -> DoubleCar.createDoubleCar(car.price, car.price))
.collect(Collectors.toList());
}
}