How to generate 6 different random numbers in java

后端 未结 10 1304
猫巷女王i
猫巷女王i 2020-12-10 21:04

I want to generate 6 different random numbers by using Math.random and store them into an array. How can I make sure that they are different? I know I need to use for-loop t

10条回答
  •  小蘑菇
    小蘑菇 (楼主)
    2020-12-10 21:34

    That code generate numbers from 6 to 0 and save in ArrayList.

    If generated number was duplicated the program generate numbers again.

    If generated number is different that number is added.

    Code:

    private ArrayList arraylist = new ArrayList();
    
    private Random rand = new Random();
    
    public void insertNumber() {
        while (true) {
            int i = generateNumber();
            if(!isGenerateNumberExists(i)){
                addNumber(i);
                break;
            }
        }
    }
    //Generate numbers
    private int generateNumber() {
        return rand.nextInt(6);
    }
    //Confirm if that number exists
    private boolean isGenerateNumberExists(int y) {
        for (int num : arraylist) {
            if (num == y) {
                return true;
            }
        }
        return false;
    }
    //Add number to arrayList
    private void addNumber(int x) {
        arraylist.add(x);
    }
    

提交回复
热议问题