【问题标题】:Java - How to generate a 2D Array with random ints, where the grid size is N*N (User Input)?Java - 如何生成具有随机整数的二维数组,其中网格大小为 N*N(用户输入)?
【发布时间】:2017-04-11 04:11:43
【问题描述】:

Java 编程的新手,我正在玩一些我遇到的练习。

我需要在 Java 中创建一个用随机整数(范围 1-100)填充的二维数组,其大小由用户输入的 N 值 (N*N) 确定。

n 价值是通过 main 获得的,虽然我不确定从这里去哪里!

示例目标输出:

n: 4

2, 3, 4, 6
9, 7, 4, 7
1, 3, 5, 8
9, 3, 7, 1

到目前为止我所拥有的大致形状(友善)

public generateGrid(int row,int col){
  private int row,col;
  int[][] array = new int[][];
  int n = grid_size;
  //randInt?

  return (newGrid)
  }

感谢任何帮助或解释!

【问题讨论】:

  • 你需要看看 Java Random 类和嵌套 for 循环。

标签: java arrays input 2d


【解决方案1】:

如果您熟悉 Java 8 流,那么您可以使用以下内容:

private int[][] randomArrayOfSize(int size) {
    Random random = new Random();
    int[][] array = new int[size][];
    IntStream.range(0, size)
        .forEach(i -> array[i] = random.ints(size, 1, 100).toArray());
    return array;
}

否则只需遍历行和列,为每个单元格分配一个新数字。

【讨论】:

    猜你喜欢
    • 2020-03-17
    • 2012-11-25
    • 1970-01-01
    • 1970-01-01
    • 2020-02-13
    • 2018-07-24
    • 1970-01-01
    • 2020-10-01
    • 1970-01-01
    相关资源
    最近更新 更多