如何用java中的值随机填充2d数组中固定数量的列?
冗长的问题,让我举个例子 我正在创建的程序使用2D数组创建2D世界,该数组的大小基于用户输入。在本例中,世界是一个4 X 10的世界如何用java中的值随机填充2d数组中固定数量的列?,java,arrays,random,multidimensional-array,Java,Arrays,Random,Multidimensional Array,冗长的问题,让我举个例子 我正在创建的程序使用2D数组创建2D世界,该数组的大小基于用户输入。在本例中,世界是一个4 X 10的世界 ---------- ---------- ---------- ---------- 我如何将3X放置在底部一行的随机位置 i、 e 但要确保它是随机的,这样如果我再次运行该方法,它们就不会出现在同一行中?您可以尝试在索引0,1,2中指定x,并使用集合框架的shuffle方法对其进行无序排列 String [][] data = {{"-","-","-","
----------
----------
----------
----------
我如何将3X放置在底部一行的随机位置
i、 e
但要确保它是随机的,这样如果我再次运行该方法,它们就不会出现在同一行中?您可以尝试在索引
0,1,2
中指定x,并使用集合框架的shuffle
方法对其进行无序排列
String [][] data = {{"-","-","-","-","-","-","-","-"},{"-","-","-","-","-","-","-","-"}};
data[data.length - 1][0] = "x";
data[data.length - 1][1] = "x";
data[data.length - 1][2] = "x";
Collections.shuffle(Arrays.asList(data[data.length - 1]));
for(int i = 0; i < data.length; i++){
for(String s : data[i]){
System.out.print(s);
}
System.out.println();
}
Scanner Scanner=新的扫描仪(System.in);
Random rgen=新的Random();
int column=scanner.nextInt();
int row=scanner.nextInt();
列表网格=新建LinkedList();
对于(int i=0;i
如果您说“随机位置”,则它仅在特定行或多行中?仅在最下面一行。我最终会把这行移到它上面的空白行,然后随机地在现在空白的底部行中生成更多的xs。可以使用列表吗?是的,一个列表将不符合行中正好有3个x的要求。这是有意义的。谢谢你的贡献!
String [][] data = {{"-","-","-","-","-","-","-","-"},{"-","-","-","-","-","-","-","-"}};
data[data.length - 1][0] = "x";
data[data.length - 1][1] = "x";
data[data.length - 1][2] = "x";
Collections.shuffle(Arrays.asList(data[data.length - 1]));
for(int i = 0; i < data.length; i++){
for(String s : data[i]){
System.out.print(s);
}
System.out.println();
}
--------
--x-xx--
Scanner scanner = new Scanner(System.in);
Random rgen = new Random();
int column = scanner.nextInt();
int row = scanner.nextInt();
List<List<Character>> grid = new LinkedList<>();
for (int i = 0; i < column; i++) {
List<Character> aColumn = new LinkedList<>();
for (int j = 0; j < row; j++) {
if (rgen.nextBoolean()) {
aColumn.add('.');
} else {
aColumn.add('x');
}
}
grid.add(aColumn);
}