我有以下的二維數組,我想比較所有的列彼此。按列分析二維數組
int [][] myarray={{1,2,3},{1,2,3},{1,2,3}};
所以我想看到的是如果列1(全1)等於列2(全部2)的值。
Ps。數組大小不僅限於此。
我有以下的二維數組,我想比較所有的列彼此。按列分析二維數組
int [][] myarray={{1,2,3},{1,2,3},{1,2,3}};
所以我想看到的是如果列1(全1)等於列2(全部2)的值。
Ps。數組大小不僅限於此。
從您的問題中不太清楚您是否要比較所有列彼此之間,或者只是一列到另一個單列(例如第1列到第2列)。假設你的意思是後者,你可以這樣做。
public boolean columnsIdentical(int[][] array, int colIndex1, int colIndex2) {
for (int row = 0; row < array.length; row++) {
if (array[row][colIndex1] != array[row][colIndex2]) {
return false;
}
}
return true;
}
for (int i=0;i<myarray[0].length;i++) {
int comp=myarray[0][i];
for (int j=1;j<myarray.length;j++) {
if (myarray[j][i] != comp) {
// no match
} else {
// match
}
}
}
測試所有列對需要3個迴路
您是否希望返回一個簡單的真/假?如果他們都是平等的,並且假如有差異,那麼這是真的? –
是的! @DavidWallace – Eddy221