用随机数创建一个数组
Create an Array with random numbers
如何在 main 方法中创建一个大小为 256 的数组,其中包含已排序的随机数?
我想创建一个随机生成 1-256 之间数字的数组,大小也为 256,这意味着数组中将有 256 个数字并且它们已排序。
我的代码只有 returns 我零?
public class Array {
public static void main(String args[])
{
double[] randomarray = new double[256];
for(int i = 0; i<randomarray.length;i++)
randomarray[i] = Math.random();
for (int i = 0; i<randomarray.length;i++)
System.out.println(randomarray[i]);
}
}
Math.random()
returns a double
介于 0.0 和 1.0 之间,并投射到 int
层 double
s,因此您要设置所有您的数组成员为 0。在将其转换为 int
.
之前,您需要将 Math.random()
乘以所需的最大值
流
作为@saka1029 , the easiest (less code) way is by creating a IntStream
, a stream of int
values, produced by a call to Random.ints
.
int[] sortedRandoms =
new Random() // Access a random-number generator.
.ints(256, 1, 256 + 1) // Generate a stream of int values, an `IntStream` object.
.sorted() // Sort those generated `int` values.
.toArray(); // Return the generated `int` values in an array.
这里我也添加了排序
如何在 main 方法中创建一个大小为 256 的数组,其中包含已排序的随机数? 我想创建一个随机生成 1-256 之间数字的数组,大小也为 256,这意味着数组中将有 256 个数字并且它们已排序。 我的代码只有 returns 我零?
public class Array {
public static void main(String args[])
{
double[] randomarray = new double[256];
for(int i = 0; i<randomarray.length;i++)
randomarray[i] = Math.random();
for (int i = 0; i<randomarray.length;i++)
System.out.println(randomarray[i]);
}
}
Math.random()
returns a double
介于 0.0 和 1.0 之间,并投射到 int
层 double
s,因此您要设置所有您的数组成员为 0。在将其转换为 int
.
Math.random()
乘以所需的最大值
流
作为@saka1029 IntStream
, a stream of int
values, produced by a call to Random.ints
.
int[] sortedRandoms =
new Random() // Access a random-number generator.
.ints(256, 1, 256 + 1) // Generate a stream of int values, an `IntStream` object.
.sorted() // Sort those generated `int` values.
.toArray(); // Return the generated `int` values in an array.
这里我也添加了排序