作り方は知っていますが、ラムダジでMap<String, Car>
作る方法は?Map<String, List<Car>>
これは、LambdaJ で書きたいコードです。
Map<String, List<Car>> driverCarsMap = new HashMap<String, List<Car>>();
for (Car car : cars)
{
String driver = car.getDriver();
if (!driverCarsMap.containsKey(driver))
driverCarsMap.put(driver, new ArrayList<Car>());
driverCarsMap.get(driver).add(car);
}
残念ながらコード:
Map<String, List<Car>> driverCarsMap = index(cars, on(Car.class).getDriver());
マップを作成しますが、値は拡張されずに上書きされます。したがって、事実上、リストはあるが単一のオブジェクトであることに注意してください。