Java中如何分割多个字符串

3

我是Java的新手,正在尝试将多个字符串拆分并存储在一个字符串数组中。以下是简单的程序:

    Scanner sc = new Scanner(System.in);
    String s1 = "Hello1 Hello2";
    String s2 = "Hello3 Hello4";
    String s3 = "Hello5 Hello6";
    String[] parts = s1.split(" ");
    parts = s2.split(" "); //Rewrites
    parts = s3.split(" "); //Rewrites
    for(String s4:parts) { 
      System.out.print(s4 + " ");
    }

程序的输出显然是:Hello5 Hello6。(如何在Java中拆分字符串)
无论如何,我希望输出为Hello1 Hello2 Hello3 Hello4 Hello5 Hello6。也就是说,传入的字符串不应替换数组中已有的字符串。
1个回答

5

数组长度是固定的,所以你只能替换它们现有的元素或创建一个新的分离的数组。

如果使用可变长度的 List 并使用 addAllsplit 的结果添加到其中,则会更容易:

List<String> parts = new ArrayList<>();
parts.addAll(Arrays.asList(s1.split(" ")));
parts.addAll(Arrays.asList(s2.split(" ")));
parts.addAll(Arrays.asList(s3.split(" ")));

请注意,这里必须使用Arrays.asList,因为split返回一个String[],而addAll需要一个String的集合,例如List<String>

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