【问题标题】:How would i print a random array so that it produces a certain random amount of values [duplicate]我将如何打印一个随机数组,以便它产生一定数量的随机值 [重复]
【发布时间】:2021-03-19 09:07:32
【问题描述】:

我正在尝试使用命令行参数打印一个随机数组,以便它接收一个诸如 7 之类的数字并打印 7 个随机值

编辑:

例如,如果我说 7

它会产生 1876379

import java.util.Random;
import java.util.Scanner;

public class exercise26 {
  public static void main(String[] args) {
    Scanner input = new Scanner(System.in);
    System.out.print("Enter array size");
    int n = input.nextInt();
    Random rd = new Random(); // creating Random object
    int[] arr = new int[1];
    for (int i = 0; i < n; i++) {
      arr[i] = rd.nextInt(); // storing random integers in an array
      System.out.println(arr[i]); // printing each array element
    }
  }
}

【问题讨论】:

标签: java arrays for-loop random


【解决方案1】:

使用 System.currentTimeMillis 初始化您的随机数,并以正确的维度初始化您的数组

    Random rd = new Random(System.currentTimeMillis); // creating Random object
      int[] arr = new int[n]; // the n value you got earlier from the user

【讨论】:

    【解决方案2】:

    这个问题意味着您要生成 n 位数字(即 0 到 9 之间的数字)。

    这可以在一个带有Random.ints 的语句中完成:

    Random random = new Random();
    random.ints(n, 0, 10).forEach(System.out::println);
    

    如果你特别想把它们放在一个数组中:

    int[] result = random.ints(n, 0, 10).toArray();
    

    可以将数组转换为带有Arrays.toString 的字符串以进行打印。这将创建一个具有固定格式“[a, b, c]”的字符串。如果您只想连接项目:

    System.out.println(String.join("", result));
    

    Arrays.stream(result).forEach(System.out::print);
    

    for 循环。

    【讨论】:

    • 我将如何打印出 int[] 结果
    • 我会在这个答案中添加一些内容
    猜你喜欢
    • 2019-12-15
    相关资源
    最近更新 更多