We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
要产生随机数,可以使用Java api中java.lang包中的Math类.Math类以静态方法的方式提供常用的数学方法,
Math类的random()方法可以生成大于等于0.0、小于1.0的double型随机数。
Math.random()方法语句基础上处理可获得多种类型、或任意范围的随机数。
int num=(int)(Math.random()*n); //返回大于等于0小于n之间的随机数 int num0=m+(int)(Matn.randon()*n); //返回大于等于m小于m+n(不包括m+n)之间的随机数
产生一个100以内的整数:
int x=(int)(Math.random()*100);
产生一个1-50之间的整数:
int x=1+(int)(Math.random()*50)
需要取2~22之间的偶数 :
public class MathRandomDemo{ public static int GetevenNum(double num1,double num2){ int s=(int)num1+(int)(Math.random()*(num2-num1)); if(s%2==0) return s; else retuen s+1; } public static void main(String[] args){ System.out.println("任意一个"+num1+"~"+num2+"之间的偶数:"+GeteneNum(2,22)); } }
还可以生成**随机字符 **
char a=(char)('a'+Math.random()*('z'-'a'+1)); //随机生成cha1~cha2的字符 (char)(cha1+Math.random()*(cha2-cha1+1));
除了Math类的Random()方法可以获取随机数之外,还可以Java.util.Random类,可以通过实例化一个Random对象创建一个随机数生成器。
Random ran=new Random();
以这种形式实例化对象时,Java编译器以系统当前时间作为随机数生成器的种子,因为每时每刻的时间都不可能相同,所以产生的随机数也不同。
如果运行速度太快,也会产生两次运行结果相同的随机数。
可以在实例化Random类对象时,自定义随机数生成器的种子。
Random ran=new Random(seedValue);
nextInt():返回一个随机整数(int)
nextInt(int n):返回大于等于0、小于n的随机整数(int)
nextLong():返回一个随机长整型值(long)
nextBoolean():返回一个随机布尔型值(boolean)
nextFloat():返回一个随机浮点型值(float)
nextDouble():返回一个随机双精度型值(double)
nextGaussian():概率密度为高斯分布的双精度值(double)
import java.util.Random; public class Demo{ public static void main(String[] args){ Random ran=new Random(); System.out.println("产生一个随机整数:"+ran.nextlnt()); } }
The text was updated successfully, but these errors were encountered:
Ogurimuio
No branches or pull requests
java中随机数的形成
Math类和Random类生成的随机数
一、Math类的random()方法
要产生随机数,可以使用Java api中java.lang包中的Math类.Math类以静态方法的方式提供常用的数学方法,
Math类的random()方法可以生成大于等于0.0、小于1.0的double型随机数。
Math.random()方法语句基础上处理可获得多种类型、或任意范围的随机数。
1.公式:
2.举例
产生一个100以内的整数:
产生一个1-50之间的整数:
需要取2~22之间的偶数 :
还可以生成**随机字符 **
二、Random类生成随机数
除了Math类的Random()方法可以获取随机数之外,还可以Java.util.Random类,可以通过实例化一个Random对象创建一个随机数生成器。
1.语法
以这种形式实例化对象时,Java编译器以系统当前时间作为随机数生成器的种子,因为每时每刻的时间都不可能相同,所以产生的随机数也不同。
如果运行速度太快,也会产生两次运行结果相同的随机数。
2.自定义随机数生成器的种子。
可以在实例化Random类对象时,自定义随机数生成器的种子。
3.Random类中还提供各种类型随机数的方法:
nextInt():返回一个随机整数(int)
nextInt(int n):返回大于等于0、小于n的随机整数(int)
nextLong():返回一个随机长整型值(long)
nextBoolean():返回一个随机布尔型值(boolean)
nextFloat():返回一个随机浮点型值(float)
nextDouble():返回一个随机双精度型值(double)
nextGaussian():概率密度为高斯分布的双精度值(double)
4.举例
The text was updated successfully, but these errors were encountered: