Java 2d Array在某个元素上打印出索引

时间:2017-03-29 10:30:09

标签: java arrays

让我说我得到了这个:

int b[][];
b = new int[4][4];
for (int i = 0; i < b.length; i++) {
    for (int j = 0; j < b[i].length; j++) {
        b[i][j] = (Math.random() * 10);
    }
}

我想要打印[i][j]< 5,我该怎么做?

3 个答案:

答案 0 :(得分:1)

您应该将值转换为int,因为Math.random()会返回double而不是int,您必须使用if来检查您的值是否为是< 5,您可以使用此,:

...
for (int j = 0; j < b[i].length; j++) {
    b[i][j] = (int) (Math.random() * 10);
    if(b[i][j] < 5){
        System.out.println(b[i][j]);
    }
}
...

或者您可以使用:

if ((b[i][j] = (int) (Math.random() * 10)) < 5) {...}
//--^--Initialization and test in one shot-^---------

答案 1 :(得分:0)

你知道for循环但不知道if语句是不是很奇怪。

但仍然是为了你的知识 你可以试试这样的东西

public class SomeClass{

    public static void main(String[] args){
        Double b[][]  = new Double [4][4];

        for(int i=0; i<b.length; i++ ){
                    for(int j=0;j<b[i].length;j++){
                     b[i][j]=(Math.random()*10);
                     if(b[i][j] < 5){
                        System.out.println("\n[i][j] = "+"["+i+"]["+j+"]\t result = "+b[i][j]);
                     }
                }
                }

    }

}

答案 2 :(得分:-1)

您已经知道如何迭代2D数组。只需在内部循环中添加if子句,并使用索引printi

调用j