用随机数android/java填充数组

Spl*_*usa 1 java arrays random int android

我在执行以下操作时遇到了麻烦,并且不知道该怎么做:我想填充一个用随机数字(1-40)生成的数组,并且还要使它不会重复.另外,有没有办法让数组使用自己的下一个值.所以我要说测试[1] ="3",然后测试[2] ="6".反正有没有让它转到下一个值而不是调用test [2]?

非常感谢

Eng*_*uad 8

List<Integer> list = new ArrayList<Integer>();
for(int i = 0; i < 40;)
{
    int rand = ((int)(Math.random() * 40)) + 1;
    if(!list.contains(rand))
    {
        list.add(rand);
        i++;
    }
}
Run Code Online (Sandbox Code Playgroud)

要么:

List<Integer> list = new ArrayList<Integer>();
for(int i = 0; i < 40; i++) list.add(i);
Collections.shuffle(list);
Run Code Online (Sandbox Code Playgroud)