生成3位不重复随机数的方法

在Java编程中,有时我们需要生成一组不重复的随机数。今天我们来探讨如何生成一个包含3位不重复的随机数的方法。

为什么需要生成不重复的随机数?

在编程过程中,有时我们需要生成一组随机数,但又不希望这些随机数中有重复的。比如在抽奖程序中,我们需要保证每个中奖者都有独一无二的奖品编号。因此,生成不重复的随机数是一个很常见的需求。

生成3位不重复随机数的方法

下面我们来看一种方法,可以生成一组包含3位不重复的随机数。具体步骤如下:

  1. 创建一个长度为3的整型数组,用来存放随机数
  2. 生成一个随机数,并判断是否已经包含在数组中
  3. 如果已经包含,则重新生成一个随机数,直至不重复为止
  4. 将不重复的随机数存入数组中
  5. 重复步骤2-4,直至数组填满3个不重复的随机数

下面是这个方法的Java实现代码:

import java.util.Random;

public class RandomNumberGenerator {

    public static void main(String[] args) {
        int[] randomNumbers = new int[3];
        Random random = new Random();

        for (int i = 0; i < 3; i++) {
            int randomNumber = random.nextInt(1000);
            while (contains(randomNumbers, randomNumber)) {
                randomNumber = random.nextInt(1000);
            }
            randomNumbers[i] = randomNumber;
        }

        for (int number : randomNumbers) {
            System.out.println(number);
        }
    }

    private static boolean contains(int[] array, int number) {
        for (int i : array) {
            if (i == number) {
                return true;
            }
        }
        return false;
    }
}

在上面的代码中,我们使用了Java的Random类来生成随机数,并通过contains方法来判断随机数是否已经存在于数组中。如果已经存在,则重新生成一个新的随机数,直至不重复为止。

类图

下面是这个随机数生成器的类图:

classDiagram
    class RandomNumberGenerator {
        -int[] randomNumbers
        -Random random
        +main(String[] args)
        +contains(int[] array, int number) : boolean
    }

在类图中,RandomNumberGenerator类包含一个存放随机数的数组randomNumbers和一个Random对象random。它包含了一个main方法和一个contains方法用来生成不重复的随机数。

结语

通过本文的介绍,我们学习了如何生成3位不重复的随机数。这种方法可以在需要生成不重复随机数的场景中应用,如抽奖程序、游戏开发等。希望本文对您有所帮助,谢谢阅读!