Java 使用分隔符将两个一维字符串数组合并为单个数组

Java 使用分隔符将两个一维字符串数组合并为单个数组,java,arrays,java-stream,Java,Arrays,Java Stream,我有两个阵列: a = ["a","b","c"] b = ["d","e","f"] 如何将它们合并到单个数组中,如下所示: c = ["a=d", "b=e", "c=f"] 使用等号(=)作为合并字符串之间的分隔符?您可以借助循环来完成此操作,例如 import java.util.Arrays; pub

我有两个阵列:

a = ["a","b","c"]

b = ["d","e","f"]
如何将它们合并到单个数组中,如下所示:

c = ["a=d", "b=e", "c=f"]

使用等号(
=
)作为合并字符串之间的分隔符?

您可以借助循环来完成此操作,例如

import java.util.Arrays;

public class Main {
    public static void main(String[] args) {
        String[] a = { "a", "b", "c" };
        String[] b = { "d", "e", "f" };
        String[] result = new String[a.length];
        for (int i = 0; i < Math.min(a.length, b.length); i++) {
            result[i] = a[i] + "=" + b[i];
        }

        System.out.println(Arrays.toString(result));
    }
}
了解有关循环的更多信息

使用
IntStream

[a=d, b=e, c=f]
import java.util.Arrays;
import java.util.stream.IntStream;

public class Main {
    public static void main(String[] args) {
        String[] a = { "a", "b", "c" };
        String[] b = { "d", "e", "f" };
        String[] result = IntStream
                            .range(0, Math.min(a.length, b.length))
                            .mapToObj(i -> a[i] + "=" + b[i])
                            .toArray(String[]::new);
        
        System.out.println(Arrays.toString(result));
    }
}

此问题正在上讨论。重复错误,因为
ArrayList
array
不同。技术相同,迭代,concat,add.Nope
ArrayList
内置了
.addAll
方法,无需迭代。对于任何非Java背景的人来说,一个简单的google搜索,比如“Java中array和ArrayList的区别是什么”可以带来一些基本的区别。最重要的是,它们之间在API方面存在数十种差异。