1. 程式人生 > >(集合)獲取10個1-20之間的隨機數,要求不能重複

(集合)獲取10個1-20之間的隨機數,要求不能重複

import java.util.ArrayList;
import java.util.Random;

/*
* 獲取10個1-20之間的隨機數,要求不能重複
*
* 用陣列實現,但是陣列的長度是固定的,長度不好確定。
* 所以我們使用集合實現。
*
* 分析:
* A:建立產生隨機數的物件
* B:建立一個儲存隨機數的集合。
* C:定義一個統計變數。從0開始。
* D:判斷統計遍歷是否小於10
* 是:先產生一個隨機數,判斷該隨機數在集合中是否存在。
* 如果不存在:就新增,統計變數++。
* 如果存在:就不搭理它。
* 否:不搭理它
* E:遍歷集合
*/
public class RandomDemo {
public static void main(String[] args) {
// 建立產生隨機數的物件
Random r = new Random();

    // 建立一個儲存隨機數的集合。
    ArrayList<Integer> array = new ArrayList<Integer>();

    // 定義一個統計變數。從0開始。
    int count = 0;

    // 判斷統計遍歷是否小於10
    while (count < 10) {
        //先產生一個隨機數
        int number = r.nextInt(20) + 1;

        //判斷該隨機數在集合中是否存在。
        if(!array.contains(number)){
            //如果不存在:就新增,統計變數++。
            array.add(number);
            count++;
        }
    }

    //遍歷集合
    for(Integer i : array){
        System.out.println(i);
    }
}

}