[英]Assigning array values to ints and random array not generating (java)
我试图从0-3创建三个不同的随机数,并将每个随机数分配给一个int
变量。 我该怎么做呢? 同样,当.opset
为(0, 2)
时将不会生成该数组(0, 2)
但当它为(1, 3)
时将不会生成。 我怎样才能解决这个问题?
package varselect;
import java.util.Arrays;
import java.util.Random;
public class varselect {
public static void main(String[] args) {
final int[] ints = new Random().opset(0, 2).distinct().limit(3).toArray();
}
}
类java.util.Random
没有名为opset
方法,因此您的问题中的代码无法编译。 您可以改用ints
方法:
final int[] ints = new Random().ints(0, 4).distinct().limit(3).toArray();
System.out.println(Arrays.toString(ints));
请注意, ints
会采用您要生成数字的范围的下限(包括上限)和上限(不包括上限),因此,如果希望数字介于0和3之间(包括0和3),则需要指定(0, 4)
作为参数。
这将是正确的方法:
final int[] ints = new Random().ints(0, 4).distinct().limit(3).toArray();
它使用ints(0, 4)
为IntStream
提供ints(0, 4)
到0-3
值,然后我们调用.distinct()
获得不同的值,调用limit(3)
获得3
不同的值,最后将其转换为数组。
如果要得到长度为3的结果随机整数数组,则应将绑定参数3传递给Random.ints(int randomNumberOrigin,int randomNumberBound)。
int[] randomIntArray = new Random().ints(0, 4).distinct().limit(3).toArray();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.