Java 如何用随机字符串填充二维数组
正如标题所说,我想用随机字符串填充2d数组,在本例中是“ux”和“W”,我制作了2d数组和随机字符串生成器,但我可以找到一个方法来填充用生成的字符串创建的数组Java 如何用随机字符串填充二维数组,java,arrays,string,random,Java,Arrays,String,Random,正如标题所说,我想用随机字符串填充2d数组,在本例中是“ux”和“W”,我制作了2d数组和随机字符串生成器,但我可以找到一个方法来填充用生成的字符串创建的数组 import java.security.SecureRandom; public class Array_Generator { public static void main(String[] args) { int row = 5; int col = 5; int[][] grid = new int[
import java.security.SecureRandom;
public class Array_Generator {
public static void main(String[] args) {
int row = 5;
int col = 5;
int[][] grid = new int[row][col];
String AB = "_W";
SecureRandom rnd = new SecureRandom();
for( int i = 0; i < grid.length; i++ ) {
StringBuilder sb = new StringBuilder(row);
sb.append( AB.charAt( rnd.nextInt(AB.length()) ) );
sb.toString();
}
System.out.println(sb);
导入java.security.SecureRandom;
公共类数组生成器{
公共静态void main(字符串[]args){
int行=5;
int col=5;
int[][]网格=新的int[行][col];
字符串AB=“_W”;
SecureRandom rnd=新的SecureRandom();
对于(int i=0;i
如果我这样做,我会得到我想要的那一排,但是我找不到一个地方去做下一排
非常感谢您的帮助。您使用了二维(2D)数组。因此,您需要遍历这两个数组。作为解决方案,您可以使用嵌套for循环
- 首先将2D数组类型更改为字符串
- 接下来将
添加到该数组中sb.toString();
grid
是一个int[][]
所以它不能容纳String
s。更改类型,并在内部循环中分配随机字符串
// int[][] grid = new int[row][col];
String[][] grid = new String[row][col];
...
// sb.toString();
grid[i][j] = sb.toString();
以下是其中一种方法:
import java.security.SecureRandom;
public class Array_Generator {
public static void main(String[] args) {
int row = 5;
int col = 5;
String[][] grid = new String[row][col];
String AB = "_W";
SecureRandom rnd = new SecureRandom();
for (int i = 0; i < grid.length; i++) {
StringBuilder sb = new StringBuilder(row);
for (int j = 0; j < grid[i].length; j++) {
sb.append(AB.charAt(rnd.nextInt(AB.length())));
sb.toString();
grid[i][j] = sb.toString();
}
}
for (int i = 0; i < grid.length; i++) {
for (int j = 0; j < grid[i].length; j++) {
System.out.print(""+grid[i][j]);
}
System.out.println();
}
}
}
那么你和某人在干什么呢?您正在迭代一个二维整数数组,但没有在其中放入任何内容,您的问题是询问一个二维字符串数组。您是否在某处打印字符串?您的答案也是正确的,我会将其标记为正确的,因为它更完整。谢谢。我也是,谢谢!祝您编程愉快!
// int[][] grid = new int[row][col];
String[][] grid = new String[row][col];
...
// sb.toString();
grid[i][j] = sb.toString();
import java.security.SecureRandom;
public class Array_Generator {
public static void main(String[] args) {
int row = 5;
int col = 5;
String[][] grid = new String[row][col];
String AB = "_W";
SecureRandom rnd = new SecureRandom();
for (int i = 0; i < grid.length; i++) {
StringBuilder sb = new StringBuilder(row);
for (int j = 0; j < grid[i].length; j++) {
sb.append(AB.charAt(rnd.nextInt(AB.length())));
sb.toString();
grid[i][j] = sb.toString();
}
}
for (int i = 0; i < grid.length; i++) {
for (int j = 0; j < grid[i].length; j++) {
System.out.print(""+grid[i][j]);
}
System.out.println();
}
}
}
WW_W__W__WW__W_
__W_WW_WW__WW_W
__W_W__W_W_W_W_
WW_W_WW_W_W_W__
WW_W__W___W____