交错两个字符串数组

时间:2017-03-13 23:52:54

标签: java concatenation concat string-concatenation

在Java中,我有类似的东西:

String[] firstname = { "name1", "name2", "name3" }; 
String[] lastname = { "lastname1", "lastname2", "lastname3" };

我需要的结果是这样的:

String[] newArray = {"name1 lastname1", "name2 lastname2", "name3 lastname3"};
假设长度相同,

将一个名字的姓氏组合成String[] newArray

2 个答案:

答案 0 :(得分:1)

Java 7及更早版本的方法可能只是使用循环并迭代所有的名字和姓氏:

String[] fullname = new String[firstname.length];
for (int i=0; i < firstname.length; ++i) {
    fullname[i] = firstname[i] + " " + lastname[i];
}

答案 1 :(得分:0)

您可以使用Java 8的Stream API并使用整数流索引两个数组。

        String[] firstname = { "name1", "name2", "name3" };
        String[] lastname = { "lastname1", "lastname2", "lastname3" };

        String[] newArray = IntStream.range(0, firstname.length).boxed()
                .map(i -> firstname[i] + " " + lastname[i]).toArray(String[]::new);

        System.out.println(Arrays.toString(newArray));

这会产生

  

[name1 lastname1,name2 lastname2,name3 lastname3]

这个答案假设lastname的长度至少是firstname的长度,但OP已经说明了这一点。