将数组值分配给不生成的整数和随机数组(java)

时间:2018-11-08 21:10:25

标签: java arrays int

我正在尝试从0-3创建三个不同的随机数,并将每个随机数分配给一个int变量。我该怎么做呢?同样,当.opset(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();
    }
}

3 个答案:

答案 0 :(得分:2)

在类opset中没有名为java.util.Random的方法,因此问题中的代码无法编译。您可以改用方法ints

final int[] ints = new Random().ints(0, 4).distinct().limit(3).toArray();
System.out.println(Arrays.toString(ints));

请注意,ints取要生成数字的范围的下限(包括上限)和上限(不包括上限),因此,如果希望数字介于0和3之间(包括0和3),则需要指定{ {1}}作为参数。

答案 1 :(得分:1)

这将是正确的方法:

final int[] ints = new Random().ints(0, 4).distinct().limit(3).toArray();

它使用ints(0, 4)IntStream提供0-3中的值,然后我们调用.distinct()获得不同的值,limit(3)获得{{1 }}不同的值,最后我们将其转换为数组。

答案 2 :(得分:0)

如果要得到长度为3的结果随机整数数组,则应将绑定参数3传递给Random.ints(int randomNumberOrigin,int randomNumberBound)。

int[] randomIntArray = new Random().ints(0, 4).distinct().limit(3).toArray();