0

所以这是我的问题。我必须编写一个用随机数填充数组的程序(没关系),然后只需要打印偶数索引数或奇数值数(j)。像这样尝试过,但是当我放入if语句时,它会显示每个偶数(索引和值-数组中的第二个),所以它是错误的。我应该怎么做?

import java.util.Random;

public class Array {

public static void main(String[] args)
{
    int rows = 5;
    int colu = 2;
    
    Random r = new Random();
    
    int [][] array = new int [rows][colu];
    
    for(int row = 0; row < array.length; row++)
    {
        for(int col = 0; col < array[row].length; col++)
        {
            array[row][col] = r.nextInt(10);
        }
    }
    
    for(int i = 0; i < array.length; i++)
    {       
        for(int j = 0; j < array[i].length; j++)
        {
            if(array[i][j]%2 == 0){
            System.out.print(array[i][j] + " ");
            }

            }
        }
        System.out.println();
    }
}

它应该如何

谢谢

4

2 回答 2

1

我将对此进行尝试,但我不确定我是否完全理解。

int array[][] = new int[row][col];
// ... populate the array with random numbers, works fine...

// Let's traverse the first column.
for (int i = 0; i < row; i++) {
    int value = array[i][0]; // col 0 means first column
    if (value % 2 == 0) {
        // ...
    }
}

// Let's traverse the second column.
for (int i = 0; i < row; i++) {
    int value = array[i][1]; // col 1 means second column
    // ...
}

你是这个意思吗?如果是,您是否看到了这种模式,以及如何概括这一点并使代码更小一些?

于 2012-12-17T01:02:08.097 回答
0

只需在“if”语句中实现这个公式:

(数×2)/4 ==0。你总是会得到偶数。你可以处理其余的:D

于 2013-11-10T22:05:20.350 回答