如何在Java中将字符串拆分为列表并在一行中修剪

4
请看我的代码。
 String Str = "E_1000, E_1005,E_1010 , E_1015,E_1020,E_1025";
                List<String> splitStr = Arrays.asList(Str.split(","));

我的列表(splitStr)中有带空格的字符串。

有没有一种方法可以在一行代码中分割字符串并修剪所有元素?

4个回答

20

是的,只需要执行以下操作:

String str = "E_1000, E_1005,E_1010 , E_1015,E_1020,E_1025";
List<String> splitStr = Arrays.stream(str.split(","))
    .map(String::trim)
    .collect(Collectors.toList());
< p >解释:
首先,我们以,为分隔符进行拆分:

                                      str.split(",")

然后,我们将其转换为(未修剪的)字符串流:

                        Arrays.stream(str.split(","))

接下来,我们将对流中的所有字符串进行修剪:

                        Arrays.stream(str.split(","))
    .map(String::trim)

最后,我们将所有已修剪的字符串收集到一个列表中:

                        Arrays.stream(str.split(","))
    .map(String::trim)
    .collect(Collectors.toList());

1

也许这会对你有所帮助

一种方法:

你可以将它保存在另一个列表splitStr2

List<String> ss = new ArrayList<String>();
for(String s:*splitStr*){ss.add(s.trim()); }

这个检查新列表(WITHOUT_WHITESPACES)

for(String temp:ss){System.out.println(temp);}

*screenshot*


0

在进行迭代之前,只需将所有空格替换掉:

    String Str = "E_1000, E_1005,E_1010 , E_1015,E_1020,E_1025".replace(" ", "");
    List<String> splitStr = Arrays.asList(Str.split(","));

0

不确定单个元素是否可以包含空格。如果不能,只需删除所有空格:

List<String> splitStr = Arrays.asList(Str.replace(" ", "").split(","));

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接