Ash*_*ade 1 java arrays random
我的目标是向用户询问数组长度,并生成一个随机双精度列表以填充该数组。我不明白如何将Math.random放入我的数组中。我从另一种方法开始,然后废弃了它。为什么要使用double random = Math.random()* array; 不能将随机生成器导入我的数组?
import java.util.Scanner;
import java.util.Arrays;
import java.util.Random;
public class Average
{
public static void main(String[] args)
{
/*Scanner in = new Scanner (System.in);
System.out.println("Please enter your array size: ");
int size = in.nextInt();
int[] awnser = new int[size]; */
Scanner scanner = new Scanner(System.in);
System.out.println("Enter a number");
double[] array = new double[scanner.nextDdouble()];
double random = Math.random() * array;
System.out.println(array.length);
}
}
Run Code Online (Sandbox Code Playgroud)
使用当前解决方案,您需要使用从0开始到给定大小之前结束的计数器进行迭代,并为每个数组元素分配一个nextDouble调用。
Java不支持将数组对象乘以数字。
这是您可能会喜欢的Java-8习惯用法:
DoubleStream
.generate(ThreadLocalRandom.current()::nextDouble)
.limit(yourGivenSize)
.toArray();
Run Code Online (Sandbox Code Playgroud)
这将为您提供一个double[]size yourGivenSize,其元素是随机生成的。