我有以下2D数组,我想比较所有列。
int [][] myarray={{1,2,3},{1,2,3},{1,2,3}};
所以我想看到的是第1列(全1)是否等于第2列中的值(全部为2)。
聚苯乙烯。数组大小不仅限于此。
答案 0 :(得分:0)
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
}
}
}
答案 1 :(得分:0)
要测试所有列对,需要3个循环
答案 2 :(得分:0)
从您的问题中不清楚您是要将所有列彼此进行比较,还是仅将一列与另一列进行比较(例如第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;
}