java利用随机数类Random产生5个1~20之间(包括1和20)的随机整数

Random rad=new Random();
for(int c=0;c<=4;c++)
System.out.println(Math.abs(rad.nextInt(20)+1));
可以随机产生1~20的整数,怎么可以达到包括1和20的要求啊?
Random rad=new Random();
System.out.println(1);
for(int c=0;c<=2;c++)
System.out.println(Math.abs(rad.nextInt(20)+1));
System.out.println(20);
发现这样可以解决问题,请问有没有更简洁的方法?同时可以使产生的随机不重复

java利用随机数类Random产生1-20之间数的实例如下:

public class Random{
        public static void main(String[] args){
                int[] intArray = new int[5];
                for(int i = 0;i < 5;i ++){
                  intArray[i] = (int)(Math.random()*29+1);
                 }
                for(int i : intArray){
                  System.out.print(i+"\t");
                 }
        }
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2019-12-24
最简单

LIST(1~20
)
然后
从里面取出来并删除
我写个伪代码
for
(i=1;i<=20;i++){
list.add(i);
}
然后随机取里面的数
并删除
第2个回答  2009-07-04
最简单 是 LIST(1~20 ) 然后 从里面取出来并删除 我写个伪代码
for (i=1;i<=20;i++){
list.add(i);
}
然后随机取里面的数 并删除
第3个回答  2009-07-04
Random 对象 的nextInt(int n)
返回一个伪随机数,它是从此随机数生成器的序列中取出的、在 0(包括)和指定值(不包括)之间均匀分布的 int值。

System.out.println(rad.nextInt(20)+1);
第4个回答  2019-12-05
(new
Random()).netxInt(29)
+
1;
相似回答