永发信息网

Java如何实现随机数?

答案:6  悬赏:0  手机版
解决时间 2021-03-11 12:18
  • 提问者网友:暮烟疏雨之际
  • 2021-03-10 21:33
比如随机0-100该怎么表示? 还有 如果随机6个数 该如何确定不重复? 请详解 谢谢
最佳答案
  • 五星知识达人网友:你可爱的野爹
  • 2021-03-10 21:42
可以使用Random类产生随机数,利用HashSet集合类过滤掉重复值,因为HashSet具有不重复性,重复的值,添加不成功,这样保证了集合里的数是唯一的。
以下代码供你参考一下:

package com.dusd;

import java.util.*;

public class RandomDemo {
public static void main(String[] args) {
//HashSet类具有唯一性
Set<Integer> distinctNumbers = new HashSet<Integer>();
Random rand = new Random();
//通过循环产生6个不重复的100以内的整数
for (int i = 0; i < 6; i++)
if (distinctNumbers.add(new Integer(rand.nextInt(100))));
System.out.println(distinctNumbers);
}
}
全部回答
  • 1楼网友:梦中风几里
  • 2021-03-11 01:43
把随机数。加上当前时间
  • 2楼网友:忘川信使
  • 2021-03-11 01:25
Double a=Math.Random()*N;这样产生0~N-1之间的随机数
  • 3楼网友:冷風如刀
  • 2021-03-11 00:28
第一种 int i=new Random().nextInt(100);得到0到99的随机数,如果要6个数的话,你循环一下;
  • 4楼网友:一叶十三刺
  • 2021-03-11 00:08
//包含大小写字母和数字的随机数每执行一次生成8位 我执行4次 生成的是32位的随机数 比你买彩票中的几率还低 哈哈package tool;import java.util.Random; public class RandMath { //产生一个随机数 public static String getRandom() { Random r=new Random(); int i=0; String str=""; String s=null; while(i<8) { switch(r.nextInt(62)) { case(0):s="0";break; case(1):s="1";break; case(2):s="2";break; case(3):s="3";break; case(4):s="4";break; case(5):s="5";break; case(6):s="6";break; case(7):s="7";break; case(8):s="8";break; case(9):s="9";break; case(10):s="a";break; case(11):s="b";break; case(12):s="c";break; case(13):s="d";break; case(14):s="e";break; case(15):s="f";break; case(16):s="g";break; case(17):s="h";break; case(18):s="i";break; case(19):s="j";break; case(20):s="k";break; case(21):s="m";break; case(23):s="n";break; case(24):s="o";break; case(25):s="p";break; case(26):s="q";break; case(27):s="r";break; case(28):s="s";break; case(29):s="t";break; case(30):s="u";break; case(31):s="v";break; case(32):s="w";break; case(33):s="l";break; case(34):s="x";break; case(35):s="y";break; case(36):s="z";break; case(37):s="A";break; case(38):s="B";break; case(39):s="C";break; case(40):s="D";break; case(41):s="E";break; case(42):s="F";break; case(43):s="G";break; case(44):s="H";break; case(45):s="I";break; case(46):s="L";break; case(47):s="J";break; case(48):s="K";break; case(49):s="M";break; case(50):s="N";break; case(51):s="O";break; case(52):s="P";break; case(53):s="Q";break; case(54):s="R";break; case(55):s="S";break; case(56):s="T";break; case(57):s="U";break; case(58):s="V";break; case(59):s="W";break; case(60):s="X";break; case(61):s="Y";break; case(62):s="Z";break; } i++; str+=s; } return str; } public static String getRADNumber() { String RandNumber= getRandom()+"-"+getRandom()+"-"+getRandom()+"-"+getRandom(); //System.out.println(RandNumber); return RandNumber; } }
  • 5楼网友:一叶十三刺
  • 2021-03-10 22:39
用Set可以不允许有重复元素。如: //产生6个不重复的100以内的整数 import java.util.*; public class DistinctNumbers { public static void main(String[] args) { Set distinctNumbers = new HashSet(); Random rand = new Random(); for(int i = 0; i < 6;) if(distinctNumbers.add(new Integer(rand.nextInt(100)))) i++; System.out.println(distinctNumbers); } }
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯