中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

java取不重復隨機數的方法是什么

小億
136
2023-08-24 00:28:26
欄目: 編程語言

在Java中,可以使用Random類和HashSet來生成不重復的隨機數。具體步驟如下:

  1. 導入Random類和HashSet類:
import java.util.Random;
import java.util.HashSet;
  1. 創建Random對象和HashSet對象:
Random random = new Random();
HashSet<Integer> set = new HashSet<>();
  1. 使用while循環生成隨機數并添加到HashSet中,直到HashSet的大小等于所需的不重復隨機數個數:
while(set.size() < desiredSize) {
int randomNumber = random.nextInt(maxValue);
set.add(randomNumber);
}
  1. 將HashSet轉換為數組或列表(可選):
Integer[] randomNumbersArray = set.toArray(new Integer[0]);
List<Integer> randomNumbersList = new ArrayList<>(set);

完整示例代碼如下:

import java.util.Random;
import java.util.HashSet;
public class RandomNumberGenerator {
public static void main(String[] args) {
int desiredSize = 10; // 生成的隨機數個數
int maxValue = 100; // 隨機數的最大值
Random random = new Random();
HashSet<Integer> set = new HashSet<>();
while(set.size() < desiredSize) {
int randomNumber = random.nextInt(maxValue);
set.add(randomNumber);
}
Integer[] randomNumbersArray = set.toArray(new Integer[0]);
System.out.println("隨機數數組:");
for(int i = 0; i < randomNumbersArray.length; i++) {
System.out.println(randomNumbersArray[i]);
}
}
}

運行以上代碼,會生成10個不重復的隨機數并打印出來。注意,如果所需的不重復隨機數個數大于最大值,可能會陷入無限循環,因此需要設置合適的最大值或增加循環條件的控制。

0
巴东县| 明溪县| 舟曲县| 丰顺县| 邢台市| 扎鲁特旗| 嵊州市| 浦东新区| 通河县| 澄城县| 莱阳市| 衡水市| 临桂县| 清水河县| 山西省| 民乐县| 扶绥县| 多伦县| 铜梁县| 冀州市| 安顺市| 荃湾区| 乐至县| 高阳县| 南陵县| 柳江县| 沙雅县| 天长市| 民勤县| 杭锦后旗| 汤阴县| 樟树市| 信宜市| 民乐县| 苍溪县| 浦北县| 于都县| 滨海县| 读书| 文昌市| 怀化市|