我已經在java中編寫了一個代碼來交換3 * 4矩陣的列。使用java交換3 * 4矩陣中的列
String[][] a = { { a,t,t,a},
{ c,k,a,t},
{ d,a,w,n }
};
,我想作爲輸出的是: A,T,T,A, T,A,K,C, N,W,A,d。
所以我的循環如下:
for(i=0;i<=2;i++) {
for(j=0;j<=5;j++) {
if(j<=2) {
temp=a[i][j+1];
a[i][j+1]=a[i][j];
a[i][j]=temp;
}
if(j>3) {
temp=a[i][j-3];
a[i][j-3]=a[i][j-4];
a[i][j-4]=temp;
} else {
temp=a[i][j-1];
a[i][j-1]=a[i][j-2];
a[i][j-2]=temp;
}
}
}
錯誤是:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -1
at Execute.swapColums(DtTwo.java:69)
at DtTwo.main(DtTwo.java:11)
請幫助..
是否要交換列或反向某些行?你想要的輸出很奇怪。 – Juvanis
如果你想了解你的代碼在做什麼,爲什麼它沒有按照你的想法去做,你應該先試試你的調試器。 –