使randoms与众不同

时间:2014-07-15 22:56:13

标签: android random

我有这个随机:

    final Random rand2 = new Random();
    int number1 = rand2.nextInt(10) + 1;
    final Random rand3 = new Random();
    int number2 = rand3.nextInt(10) + 1;
    final Random rand4 = new Random();
    int number3 = rand4.nextInt(10) + 1;
    final Random rand5 = new Random();
    int number4 = rand5.nextInt(10) + 1;
    final Random rand6 = new Random();
    int number5 = rand6.nextInt(10) + 1;
    final Random rand7 = new Random();
    int number6 = rand7.nextInt(10) + 1;

我的问题是,我将文字设置为:

1.number1 + NUMBER2

2.number3 +号码4

3.number5 + number6。

我需要的是确保text1与text2不同,text3与text1不同,text2与text3不同,这意味着:

(number1 + number2) != (number3 + number4)
&& (number3 + number4) != (number5 + number6)
&& (number5 + number6) != (number1 + number2)

我该怎么做?

1 个答案:

答案 0 :(得分:1)

不要为每个新号码创建新的Random对象。重复调用第一个随机对象上的rand.nextInt()

Random rand = new Random();
int number1 = rand.nextInt();
int number2 = rand.nextInt();
...etc

要验证唯一性,请将每个生成的数字放在Hashtable中,并使用contains()方法查看它是否已被使用。