如何拆分列表<String >值并仅将数字放入另一个列表

问题描述 投票:0回答:1

我的列表值为 ["12-dept20","13-dept50"] 我想将它们拆分为仅包含 - 之前的数字的列表,以获得 [12, 13]

列表。使用streams split,但不确定如何处理它。任何帮助,将不胜感激。 我正在使用java 8

列表 src = ["12-dept20","13-dept50"];

预期:

新增列表 = [12, 13]

java stream
1个回答
0
投票

给你:

List<String> source = List.of("12-dept20", "13-dept50");

List<Integer> target = source.stream()
        .map(entry -> entry.split("-")[0])
        .map(Integer::valueOf)
        .toList();

System.out.println(target);

请记住,此代码不是故障安全的,以防由于格式错误而无法解析条目。

© www.soinside.com 2019 - 2024. All rights reserved.