簡體   English   中英

如何測試該行是否在二維數組中?

[英]How can i test to see if the row is even in a 2d array?

我正在嘗試測試數組中的每一行,看看它們是偶數還是奇數。 如果行是偶數,我想將行元素中的隨機值更改為 0。如果行是奇數,我想將元素更改為 1。我已經能夠創建元素並將其打印出來,但我堅持如何測試行。 我知道測試一個數字是否是你使用的 (i % 2 == 0) 但我不確定我應該使用什么編碼。

  public static void main(String[] args) {

    int[][] box;
    box = new int[2][2];

    int row;
    int column;

    for (row = 0; row < box.length; row++) {
        for (column = 0; column < box[row].length; column++) {
            box[row][column] = (int) (Math.random() * 100);
        }
    }
   //where im having issues
    // i get error 'bad operand types for binary operator'

     if (box[row] % 2 == 0) {
        for (row = 0; row< box.length;row++){
           box[row][column] = [0][];
        }
     }
    else{
        for(row = 0; row < box.length; row++){
            box[row][column] = [1][];
        }
    }      

    for (row = 0; row < box.length; row++) {
        for (column = 0; column < box[row].length; column++) {
            System.out.print(box[row][column] + " ");
        }
        System.out.println();
    }
}
}

可以使用Arrays內置函數fill(int[],value) ,它有兩個參數,第一個一維陣列和第二值,以填充

//also if you are checking is row is even or odd divide row not box[row]
if (row % 2 == 0) {
        Arrays.fill(box[row],0);//set 0 to every element in this wor
}
else{  
        Arrays.fill(box[row],1);//set 1 to every element in this wor        
} 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM