【发布时间】:2022-01-16 18:46:26
【问题描述】:
我需要创建一个包含 500 行随机字符串值的二维数组,但每列必须有各自的随机值,例如,第一列只有“M”或“F”,然后第二列必须只有“ Bsc”或“Msc”等。总共有 4 列,性别、计划、研究和年份。
之后,我需要从这个二维数组中打印出所有可能的值。
import java.security.SecureRandom;
public class read {
public static void main(String[] args) {
int row = 500;
int col = 5;
String[][] grid = new String[row][col];
String[] Gj = {"M","F"};
String[] AB = Gj;
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();
}
}
}
这是我到目前为止所做的,我知道那里使用 AB.length() 有问题。
【问题讨论】:
-
同时添加您的预期输出。
-
这里的 StringBuilder 有什么意义?