使用 ArrayList 构造函数制作 List 的转换副本
Make a transformed copy of a List using ArrayList constructor
我不知道你们怎么称呼它,但是可以写这样的东西吗?只有这两行。
List<Celsius> listOfCelsiuses = new ArrayList<>();
List<Fahrenheit> listOfFahrenheits = new ArrayList<>(listOfCelsiuses);
它基本上采用摄氏度列表和 returns 华氏度列表。但是我应该在哪里实现该转换逻辑?
在 java 8 中,这是一个候选 Stream 和一个 map 调用:
List<Celsius> celsius;
final List<Fahrenheit> fahrenheit = celsius.stream()
.map(c -> convert(c))
.collect(Collectors.toList());
private static Fahrenheit convert(Celsius c) {
在 jre 8 之前,您可以使用 Gauva 的 Lists.transform with a Function 进行转换。
我不知道你们怎么称呼它,但是可以写这样的东西吗?只有这两行。
List<Celsius> listOfCelsiuses = new ArrayList<>();
List<Fahrenheit> listOfFahrenheits = new ArrayList<>(listOfCelsiuses);
它基本上采用摄氏度列表和 returns 华氏度列表。但是我应该在哪里实现该转换逻辑?
在 java 8 中,这是一个候选 Stream 和一个 map 调用:
List<Celsius> celsius;
final List<Fahrenheit> fahrenheit = celsius.stream()
.map(c -> convert(c))
.collect(Collectors.toList());
private static Fahrenheit convert(Celsius c) {
在 jre 8 之前,您可以使用 Gauva 的 Lists.transform with a Function 进行转换。