java8 String格式的List 转为List
要将String格式的List转换为List,可以使用Java 8的Stream API进行转换。以下是一个示例代码:
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
public class Main {
public static void main(String[] args) {
List<String> stringList = Arrays.asList("[1, 2, 3]", "[4, 5, 6]", "[7, 8, 9]");
List<List<Integer>> listList = stringList.stream()
.map(s -> Arrays.stream(s.replaceAll("\\[|\\]", "").split(", "))
.map(Integer::valueOf)
.collect(Collectors.toList()))
.collect(Collectors.toList());
System.out.println(listList);
}
}
输出结果为:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
在上面的示例中,我们首先创建了一个String格式的List stringList。然后,我们使用Stream的map方法将每个String元素转换为一个Listmap方法中,我们首先使用正则表达式\\[|\\]将每个String元素中的方括号去除。然后,我们使用split方法将每个String元素按逗号和空格分割成一个String数组。接下来,我们使用map方法将String数组中的每个元素转换为Integer类型。最后,我们使用collect方法将每个元素收集到一个Listcollect方法将所有的List
请注意,这种转换方法假设String格式的List中的每个元素都遵循特定的格式,即方括号括起的由逗号和空格分隔的整数列表。如果String格式的List的元素的格式与此不同,需要进行适当的修改
原文地址: http://www.cveoy.top/t/topic/ilsL 著作权归作者所有。请勿转载和采集!