Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/391.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JAVA拆分列表中每个元素的最佳方法_Java_Java Stream - Fatal编程技术网

JAVA拆分列表中每个元素的最佳方法

JAVA拆分列表中每个元素的最佳方法,java,java-stream,Java,Java Stream,如何使用streams优化此功能 List<String> prepared = new ArrayList<>(); availableFieldsFromImage.forEach(field -> { if(field.contains(".")){ prepared.add(field.split("\\.")[0]); } else {

如何使用streams优化此功能

    List<String> prepared = new ArrayList<>();
    availableFieldsFromImage.forEach(field -> {
        if(field.contains(".")){
            prepared.add(field.split("\\.")[0]);
        } else {
            prepared.add(field);
        }
    });
List prepared=new ArrayList();
availableFieldsFromImage.forEach(字段->{
如果(字段包含(“.”){
已准备好。添加(字段拆分(“\\”)[0]);
}否则{
准备。添加(字段);
}
});
也许吧

    List<String> prepared=availableFieldsFromImage.stream()
.map(i->i.contains(".") ? i.split("\\.")[0] : i)
.collect(Collectors.toList())
List prepared=availableFieldsFromImage.stream()
.map(i->i.contains(“.”)i.split(“\\”)[0]:i)
.collect(收集器.toList())

使用
地图
,然后
收集

availableFieldsFromImage.stream().map(字段->字段.包含(“.”)
?字段拆分(“\\”)[0]
:字段)
.collect(Collectors.toList());
您可以执行以下操作:

List<String> prepared = availableFieldsFromImage.stream()
        .map(field -> field.contains(".") ? field.split("\\.")[0] : field)
        .collect(Collectors.toList());
List prepared=availableFieldsFromImage.stream()
.map(字段->字段.contains(“.”)字段.split(“\\”)[0]:字段)
.collect(Collectors.toList());

split
如果未找到分隔符,则返回初始字符串,因此在执行拆分之前无需测试“.”:

List prepared=availableFieldsFromImage.stream()
.map(字段->字段.split(“\\”)[0])
.collect(Collectors.toList());

虽然此代码可以回答问题,但提供有关如何和/或为什么解决问题的附加上下文将提高答案的长期价值。