
正文
java二维数组转置代码 java二维数组转置代码怎么写
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
java 怎么把二维数组转换成一维数组
java将二维数组转换成一维数组,主要是通过计算二维数组的所有数组大小,然后使用循环语句赋值,如下代码:
package com.qiu.lin.he;
public class Ceshi {
public static void main(String[] args) {
int[][] m = { { 1, 23 }, { 2, 3, 4, 5 } };
int[] n;
int len = 0;
// 计算一维数组长度
for (int[] element : m) {
len += element.length;
}
// 复制元素
n = new int[len];
int index = 0;
for (int[] element : m) {
for (int element2 : element) {
n[index++] = element2;
}
}
for (int i : n) {
System.out.print(i + ",");//输出所有的数据
}
}
}
相关问答
Q1: Java二维数组的转置?
int a[][] = {{3, 7, 5}, {2, 6, 4}};
int b[][] = new int[3][2];
for (int i = 0; i a.length; i++) {
for (int j = 0; j a[i].length; j++) {
System.out.println(a[i][j]);
b[j][i] = a[i][j];
}
}
Q2: 用java:利用二维数组,任意给出一个矩阵,编写实现矩阵转置的代码
借花献佛
/**
* 实现二维数组的转置
* @author HAN
*
*/
public class transposition_Arrays2D_ch6_4 {
final static double PI=3.1415;
public static void main(String[] args) {
/*StaticTest st1=new StaticTest();
StaticTest st2=new StaticTest();
st1.method2("HAN");*/
/*****定义要用于转置的二维数组*******/
int arr2D[][]={{1,2,3},{4,5,6},{7,8,9}};
/*****构造结果新二维数组用于存放转置结果*******/
/*定义结果数组变量,注意 一定要先开辟一个内存,
否则只是地址传递,也就是说两个数组名实际上指向的是同一块内存*/
//而构造二维数组可以为维度来进行,不一定是一个矩阵,即每一行的长度不一定相同
int result_arr[][]=new int[arr2D.length][];//先实现第一维
for(int i=0 ; iarr2D.length;i++){ //再实现第二维
result_arr[i]=new int[arr2D[i].length];
}
// int result_arr[][]=Arrays.copyOf(arr2D, arr2D.length);
//上面这个命令行行不通!
/*****输出用于转置的二维数组*******/
for (int x[]:arr2D){
for(int e:x){
System.out.print(e+" ");
}
System.out.println();
}
System.out.println();
/*******进行元素倒置******/
for(int i=0 ; iarr2D.length;i++){
for(int j=0; jarr2D[i].length;j++){
result_arr[j][i]=arr2D[i][j]; //转置核心
}
}
/*****show the result in the result matrix*******/
for (int x[]:result_arr){
for(int e:x){
System.out.print(e+" ");
}
System.out.println();
}
}
}
//import java.util.Arrays;
//public class transposition_Arrays2D {
//
// public static void main(String[] args) {
// int arr2D[][]={{1,2,3},{4,5,6},{7,8,9}};
// /*定义结果数组变量,注意 一定要先开辟一个内存,
// 否则只是地址传递,也就是说两个数组名实际上指向的是同一块内存*/
// int result_arr[][]=new int[arr2D.length][];
// for(int i=0 ; iarr2D.length;i++){
// result_arr[i]=new int[arr2D[i].length];
// }
//
// // 进行元素倒置
// for(int i=0 ; iarr2D.length;i++){
// for(int j=0; jarr2D[i].length;j++){
// result_arr[j][i]=arr2D[i][j];
// }
// }
//
// // show the result in matrix
// for (int x[]:result_arr){
// for(int e:x){
// System.out.print(e);
// }
// System.out.println();
// }
//
// }
//
//}
Q3: 如何用JAVA对3*4二维数组转置输出?
public static void main(String[] args) {
int[][]arr = new int[][]{{1,2,3,4},{5,6,7,8},{9,10,11,12}};
int[][]arr2 = new int[arr[0].length][arr.length];
showArr(arr);
System.out.println("--------------------------");
for (int i = 0; i arr[0].length; i++) {
for (int j = 0; j arr.length; j++) {
arr2[i][j] = arr[j][i];
}
}
showArr(arr2);
}
public static void showArr(int[][] arr) {
for (int i = 0; i arr.length; i++) {
for (int j = 0; j arr[0].length; j++) {
System.out.print("\t" + arr[i][j]);
}
System.out.println();
}
}
java二维数组转置代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java二维数组转置代码怎么写、java二维数组转置代码的信息别忘了在本站进行查找喔。








