我基本上只是从java开始,并且正在努力学习一个非常基本的porgram。 我有一个2d布尔数组,我想随机填充...你不会猜它...布尔!这是我现在使用的方法,但似乎在运行它之后,数组只填充'false'。
public static void randBoard() {
for(boolean[] item : board) {
for(boolean square : item) {
square = Math.random() < .5;
}
}
}
答案 0 :(得分:1)
正如Kevin Esche所说:如果您通过布尔值进行每个循环,您将获得值对象,但您希望将其设置为引用。这意味着必须设置列表中的位置。
它应该使用以下代码:
public static void randBoard() {
Random random = new Random();
for(int i =0; i<board.length;i++) {
boolean[] item = board[i];
for(int j= 0;j<item.length;j++) {
item[j]= random.nextBoolean();
}
}
}
答案 1 :(得分:1)
你的意思是这样吗?
int d1 = 5;
int d2 = 5;
boolean[][] board = new boolean[d1][d2];
for(int i=0; i<d1; i++) {
for(int j=0; j<d2; j++) {
boolean square = Math.random() < .5;
board[i][j] = square;
System.out.print("[" + board[i][j] + "]");
}
System.out.println();
}