您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關使用Java ArrayList實現生成不重復隨機數的示例,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
使用數列ArrayList實現,代碼如下:
/** * 隨機生成 N--M,N個不重復隨機數 使用ArrayList * * @param startRange 起始數字 * @param endRange 終止數字 * @param count 個數 */ public static ArrayList<Integer> getRandom(int startRange, int endRange, int count) { ArrayList<Integer> arr = new ArrayList<>(); for (int i = 0; i < count; i++) { arr.add(((int) (Math.random() * (endRange - startRange + 1) + startRange))); for (int j = 0; j < i; j++) { if (arr.get(i) == arr.get(j)) { arr.remove(i); i--; break; } } } return arr; }
這個實現的原理和使用數組基本一致,但是需要注意的幾點,我這里是使用的一個返回序列,參數只有起始值、終值和個數,然后定義了一個ArrayList數列,使用數列的add方法,接收每一個產生的隨機數,并使用For循環進行判斷是否重復,如果重復外循環 i -- ,但是這里需要注意的是:此時ArrayList里面已經存放了當前的重復的值了,所以不能只用 i --,還需要使用梳理的remove方法將此不符合條件的數移除,這里是需要注意的,如果不寫著一句,在小的范圍內生成的隨機數很可能會出現死循環。
下面是成功運行的截圖:
上述就是小編為大家分享的使用Java ArrayList實現生成不重復隨機數的示例了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。