And*_*ose 5 java java-8 java-stream
我有一个List<String>我想转换成的List<Long>.在Java 8之前,我会通过循环执行此操作List<String>,将每个转换String为a Long并将其添加到new List<Long>,如下所示.
List<String> strings = /* get list of strings */;
List<Long> longs = new ArrayList<>();
for (final String string : strings) {
longs.add(Long.valueOf(string));
}
Run Code Online (Sandbox Code Playgroud)
但是,我需要使用Java 8流进行此转换,因为转换是更大流操作的一部分.我有List<String>一个流,就像我做了strings.stream().那么,我怎么能执行这种转换,类似于这样的事情.
List<String> strings = /* get list of strings */;
List<Long> longs = strings.stream().map(/*convert to long*/).collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)
And*_*ose 10
解决方案非常简单.只是需要使用Long::valueOf.
List<Long> longs = strings.stream().map(Long::valueOf).collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3540 次 |
| 最近记录: |