Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将二维阵列转换为一维阵列_Java_Arrays - Fatal编程技术网

Java 将二维阵列转换为一维阵列

Java 将二维阵列转换为一维阵列,java,arrays,Java,Arrays,只是想知道如何将二维数组转换为一维数组 For example if my array was: int[][] arr = {{2,3,4}, {5,6,7}}; lets say I wanted it just to be transferred to a 1d array such as: int[] arr = {2,3,4,5,6,7}; 假设您使用的是Java8+,那么您可以创建一组int[]实例;然后在将其转换为数组之前将其转换为。这完全符合

只是想知道如何将二维数组转换为一维数组

For example if my array was:

int[][] arr = {{2,3,4},
               {5,6,7}};

lets say I wanted it just to be transferred to a 1d array such as:

int[] arr = {2,3,4,5,6,7};

假设您使用的是Java8+,那么您可以创建一组
int[]
实例;然后在将其转换为数组之前将其转换为。这完全符合你的描述。像

int[][] arr = { { 2, 3, 4 }, { 5, 6, 7 } };
int[] b = Stream.of(arr).flatMapToInt(IntStream::of).toArray();
System.out.println(Arrays.toString(b));
哪个输出

[2, 3, 4, 5, 6, 7]

在Java 8和整数数组中,您可以使用:

int[][] arr2d = new int[][] { { 1, 2, 3 }, { 4, 5 }, {6, 7} };
int[] arr1d = Arrays.stream(arr2d).flatMapToInt(Arrays::stream).toArray();
对于Java 7或对象数组:

Object[][] obj2d = new Object[][] {};

List<Object> list = new ArrayList<>();
for (Object[] arr : obj2d) {
    for (Object obj : arr) {
        list.add(obj);
    }
}

Object[] obj1d = list.toArray(new Object[] {});
Object[][]obj2d=新对象[][]{};
列表=新的ArrayList();
对于(对象[]arr:obj2d){
用于(对象对象对象:arr){
列表。添加(obj);
}
}
Object[]obj1d=list.toArray(新对象[]{});

首先,您要开始编写一些代码来尝试这样做。如果你陷入困境,那么你就有一些问题要问。