久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

Java ArrayList如何實現生成不重復隨機數

瀏覽:32日期:2022-08-23 17:48:18

在此之前我使用Java的數組實現了產生N-M之間的不重復的隨機數,下面是使用數列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如何實現生成不重復隨機數

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
主站蜘蛛池模板: 长岛县| 柳州市| 镇平县| 蚌埠市| 凌源市| 石台县| 三门县| 铁岭市| 佛教| 奇台县| 蒙山县| 沂源县| 股票| 邳州市| 元谋县| 霍林郭勒市| 土默特右旗| 永平县| 南通市| 昆山市| 松滋市| 澄江县| 娄烦县| 阜新市| 安新县| 拜泉县| 建湖县| 北票市| 达日县| 卢龙县| 谢通门县| 西城区| 镇康县| 澄江县| 长兴县| 比如县| 湖南省| 鞍山市| 乌鲁木齐县| 上饶市| 峨边|