Java用Math.random()生成一个50-100间的整型随机数

如题所述

代码如下:

public class text {

public static void main(string[ ] args) {

int num =(int) (Math.random( )*50+50) ;

system.out.println(num);

}

}

random产生的是(0,1)的小数。

如果想要产生50--100之间的数字;

先让它产生[0--50)之间的数字,也就是  random()*50

然后在后面加上50,也就是random()*50+50;

得到的就是[50--100]的整数了。

扩展资料

Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。

Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等

参考资料:博客园——JAVA中的Random()函数

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2019-10-31

Math类的random()方法可以生成[0,1)之间的随机浮点数

double类型数据强制转换成int类型,整数部分赋值给int类型变量,小数点之后的小数部分将会丢失。

int b=(int)(Math.random()*10);//生成[0,9]之间的随机整数。

int temp=m+(int)(Math.random()*(n+1-m)); //生成从m到n的随机整数[m,n]

扩展资料:

用Math类的random()方法产生一个字符,若该字符是一个大写英文字母,则输入 “Yes!”,否则输出“NO”。

//产生一个[0,1)之间的随机数
Math.random():

//返回指定范围的随机数(m-n之间)的公式:
Math.random()*(n-m)+m;
或者
Math.random()*(n+1-m)+m

本回答被网友采纳
第2个回答  推荐于2017-04-25

你好:

random产生的是[0,1)的小数。


如果想要产生50--100之间的数字;

先让它产生[0--50)之间的数字,也就是  random()*50

然后在后面加上51,也就是random()*50+51;

得到的就是[50--100]的整数了。

你可以这样写:



int num=(int)Math.random()*50+51;

System.out.println(num);


希望能帮到你...........

本回答被提问者采纳
第3个回答  2012-10-24
(int) Math.round(Math.random() * 50) + 50
第4个回答  2019-02-27
[a,b] ==> (int)(Math.random()*(b-a+1)+a)
(int)(Math.random()*(51)+50)
相似回答