我正在寻找一个优化的解决方案,以从null
中删除HashMap
键。这个HashMap存在于ArrayList
中。请找到以下示例。
public class Car {
String year;
String model;
Map<String,String> colors;
}
List<Car> listOfCars = new ArrayList<Car>();
颜色映射的示例可能如下所示:
{
red(1),
blue(2),
green(3),
black(4),
null(5)
}
我需要一个解决方案迭代listOfCars
,获取颜色的地图,并从中删除null
密钥。试图在Java8中查看任何其他选项而不是使用Iterator。
谢谢!
考虑到地图不能包含重复键,我们可以说,Map
实例的每个Car
实例最多只能有一个带null
键的条目。
使用Java-8 forEach
构造的解决方案是:
listOfCars.forEach(e -> e.getColors().remove(null));
虽然它可以用for
循环或增强的for
循环完成。