java产生随机整数代码 java随机数

在java中随机生成10个整数,用户求输入一个数,判断是否存在于这10个整数中?

由于你没有指定这10个整数的生成范围,所以我这里假定是0~99之间的整数,这样用户输入时有10%的几率命中。

成都创新互联公司总部坐落于成都市区,致力网站建设服务有成都网站建设、成都网站设计、网络营销策划、网页设计、网站维护、公众号搭建、微信平台小程序开发、软件开发等为企业提供一整套的信息化建设解决方案。创造真正意义上的网站建设,为互联网品牌在互动行销领域创造价值而不懈努力!

整体代码为:

public class Main {

public static void main(String[] args) {

//声明长度为10的随机数数组

int[] randoms = new int[10];

Random random = new Random();

for (int i = 0; i 10; i++) {

//获取0~99之间的一个随机整数,可通过调整nextInt的参数来修改随机数范围

int num = random.nextInt(100);

//如果新生成的数字已经存在于随机数数组中,则重新生成

if (checkDistinct(randoms, num)) {

i--;

continue;

}

randoms[i] = num;

}

//增序排序,好看

Arrays.sort(randoms);

System.out.println("请输入一个整数:");

Scanner scanner = new Scanner(System.in);

//严谨一点这里其实可以对输入的in进行校验,检验其是不是整数,校验方法很多搜一下就有我这就不校验了

int in = scanner.nextInt();

System.out.println("生成的随机数数组为:");

System.out.println(Arrays.toString(randoms));

if (checkDistinct(randoms, in)) {

System.out.println("输入的数字[" + in + "]在其中");

} else {

System.out.println("输入的数字[" + in + "]不在其中");

}

}

//检查新生成的数字是否存在于随机数数组中,若存在,返回true

private static boolean checkDistinct(int[] randoms, int num) {

for (int i = 0; i randoms.length; i++) {

if (randoms[i] == num) {

return true;

}

}

return false;

}

}

运行结果:

输入的数字存在时:

输入的数字不存在时:

java如何生成随机数?

可以先通过random方法生成一个随机数,然后将结果乘以100,然后再利用int方法进行转换,就可以得到一个0到99的随机整数。

java如何产生1-10随机数

java代码方法一如下:

int random=(int)(Math.random()*10+1)

java代码方法二如下:

package bdqn_Empy;

import java.util.Random;

public class Text {

/**

* @param args

*/

public static void main(String[] args) {

// TODO Auto-generated method stub

int a=0;

Random b=new Random();

a=b.nextInt(101);

System.out.println(a);

}

}

扩展资料:

可以先通过 random方法生成一个随机数,然后将结果乘以10。此时产生的随机数字即为大于等于0小于10的数字。

然后再利用nt方法进行转换它会去掉小数掉后面的数字即只获取整数部分,不是四舍五入)。最后即可获取一个0到9的整数型随机数字。其实现方法很简单,就是对原有的 grandom方法按照如下的格式进行变型:(int( Math. Random0*10)即可。

其实我们还可以对这个方法进行扩展,让其产生任意范围内的随机数。至需要将这个10换成n即可,如改为( int(Math. Random0n)。此时应用程序就会产生一个大于等于0小与n之间的随机数。

如将n设置为5,那么其就会产生一个0到5之间的整数型的随机数。如果将这个写成一个带参数的方法,那么只要用户输入需要生成随机数的最大值,就可以让这个方法来生成制定范围的随机数。

java如何产生1-8的整数随机数?

(int)(Math.random()*8)+1

或者

Random r =new Random(100);

System.out.println(r.nextInt(8)+1);

Java产生随机数的两种方式

1、通过Math.random()方法返回一个0到1之间的double值。 

2、通过Random类来产生一个随机数,这个是专业的Random工具类,功能强大。

Math.random()方法

Math.random()方法是 Java 的一个静态方法,返回一个0到1之间,前闭后开区间的double值。

(int)(Math.random()*10) 返回0到9的随机整数。 

(int)(Math.random()*n) 返回0到n的随机整数。 

(int)(Math.random()*100)+1 返回1到100之间的随机整数,前面返回0到99之间的随机数,加1就成了1到100之间的随机数。

Random类

Random 类是 Java 的 util 包中的一个类。

一、Random类使用说明

Random类使用的根本策略是分带种子和不带种子的Random的实例。 

通俗说,两者的区别是:带种子的,每次运行生成的结果都是一样的。 

不带种子的,每次运行生成的都是随机的,没有规律可言。

创建不带种子的Random对象 

Random random = new Random(); 

使用一个和当前系统时间对应的相对时间有关的数字作为种子数。

创建带种子的Random对象有两种方法: 

1) Random random = new Random(10); 

2) Random random = new Random();random.setSeed(10); 

种子的作用是什么?

种子就是产生随机数的第一次使用值,机制是通过一个函数,将这个种子的值转化为随机数空间中的某一个点上,并且产生的随机数均匀的散布在空间中。以后产生的随机数都与前一个随机数有关。 

举例:

Random r =new Random(100);

System.out.println(r.nextInt(20)); 

100是种子,r.nextInt(20)中的20是随机数的上限,产生的随机数为0-20的整数,不包括20,种子数只是随机算法的起源数字,和生成的随机数字的区间没有任何关系。 

初始化时100并没有起直接作用(注意:不是没有起作用)。


分享文章:java产生随机整数代码 java随机数
文章位置:http://myzitong.com/article/dohpohs.html