java随机化数组中的索引

java随机化数组中的索引,java,arrays,indices,Java,Arrays,Indices,我已经研究了随机或随机排列数组 我不确定这是否是最好的解决办法 我想随机化一个包含3项的数组的索引 十二, 4. 五, 我试着用数学。随机的 int randomoption2=opmin+(int)(Math.random()*((opmax-opmin)+1)) 但我有一个问题,重复的指数值。什么是使指数随机化的最佳方法,以避免重复 乙二醇 我不希望数组中的两个元素的索引为1 我现在需要将每个数字存储在变量中,以便可以输出它们 System.out.println(选项[0]) 使用: 在

我已经研究了随机或随机排列数组

我不确定这是否是最好的解决办法

我想随机化一个包含3项的数组的索引

十二, 4. 五,

我试着用数学。随机的

int randomoption2=opmin+(int)(Math.random()*((opmax-opmin)+1))

但我有一个问题,重复的指数值。什么是使指数随机化的最佳方法,以避免重复

乙二醇

我不希望数组中的两个元素的索引为1

我现在需要将每个数字存储在变量中,以便可以输出它们

System.out.println(选项[0])

使用:

在线查看它的工作情况:

它在内部使用。这是一个有效的洗牌算法,不会给你重复

相关的

使用:

在线查看它的工作情况:

它在内部使用。这是一个有效的洗牌算法,不会给你重复

相关的


只需通过布尔数组保留三个布尔值即可。一旦达到0、1或2索引,将其设置为true


选择一个随机位置并执行while(boolean[number selected]==true)重做随机选择。

只需通过一个布尔数组保留三个布尔值即可。一旦达到0、1或2索引,将其设置为true


选择一个随机位置并执行while(boolean[number selected]==true)重做您的随机选择。

如果您需要随机洗牌,您可以使用集合#shufflehi谢谢您能提供一个简单的示例吗如果您需要随机洗牌,你可以使用Collections#shufflehi谢谢你能提供一个简单的例子吗?这接近于如果Collections答案不可行我会怎么做。这接近于如果Collections答案不可行我会怎么做。不适用于
int[]
,刚刚测试过。原语数组没有得到shuffeld。适用于
整数[]
。。。(让我自己惊讶的是)现在有了
int[]
数组,请:P-从
int[]
Integer[]
的强制转换显然不起作用;)@安德烈亚斯丁:你说得对。您不能有
列表
。相反,您会得到一个
列表
!解决方法是使用
Integer[]
。相关:。@alex:你说的“然后需要打印出值,这样每个System.out.println都包含一个值”是什么意思。这是做作业用的吗?这是我正在写的一个软件。我已经完成了随机数发生器的所有功能。它是用android编写的,但我想将android框架与Java代码分开。我需要将被洗牌的数字放入三个收音机按钮中。
int[]
不起作用,刚刚测试过。原语数组没有得到shuffeld。适用于
整数[]
。。。(让我自己惊讶的是)现在有了
int[]
数组,请:P-从
int[]
Integer[]
的强制转换显然不起作用;)@安德烈亚斯丁:你说得对。您不能有
列表
。相反,您会得到一个
列表
!解决方法是使用
Integer[]
。相关:。@alex:你说的“然后需要打印出值,这样每个System.out.println都包含一个值”是什么意思。这是做作业用的吗?这是我正在写的一个软件。我已经完成了随机数发生器的所有功能。它是用android编写的,但我想将android框架与Java代码分开。我需要把数字洗成三个单选按钮
int numbers[] = new int[3];
a[1] = 2;
public class randomorder {

        public static void main(String [] args)
        {
            randomorder();  
            System.out.println(randomorder());
        }

        public static ArrayList randomorder(){
            ArrayList nums = new ArrayList();
            nums.add(1);
            nums.add(2);
            nums.add(3);

            Collections.shuffle(nums);
            return nums;
        }
    }
Integer[] numbers = { 1, 2, 3, 4, 5 };
Collections.shuffle(Arrays.asList(numbers));