1、Math.random()方法——伪随机数
Math类中存在一个random()方法,用于产生随机数,这个方法默认生成大于等于0.0且小于1.0的double型随机数。
通过m + (int)( Math.random()*n )生成大于等于m且小于m+n的随机数。
通过(char)( 'a' + Math.random()*( 'z' - 'a' +1 ) )生成a~z之间的字符。
通过(char)(char1 + Math.random()*( char2 - char1 +1 ) )生成任意两个字符之间的随机字符。
2、Random类
通过java.util.Random类,实例化一个Random对象创建一个随机数生成器。
Random rand = new Random() ;-
Random rand = new Random( seedValue) ;
可以通过上面两种方式创建Random对象,其中seedValue为随机生成器的种子。
在Random类中提供了获取各种数据类型随机数方法:
-
public int nextInt()返回一个随机整数。 -
public int nextInt(int n)返回大于等于0且小于n的随机整数。 -
public long nextLong()返回一个随机长整型值。 -
public boolean nextBoolean()返回一个随机布尔型值。 -
public float nextFloat()返回一个随机浮点型值。 -
public double nextDouble()返回一个随机双精度型值。 -
public double nextGaussian()返回一个概率密度为高斯分布的双精度值。
import java.util.Random;
public class Test9_0 {
public static void main(String[] args) {
// 返回1-10的随机整数
System.out.println(1+(int)(Math.random()*(11-1)));
// 实例化一个Random对象创建一个随机数生成器
Random ran = new Random();
System.out.println("产生一个随机整数:"+ran.nextInt());
System.out.println("产生一个大于等于0且小于10的随机整数:"+ran.nextInt(10));
System.out.println("随机产生一个长整型值:"+ran.nextLong());
System.out.println("随机产生一个双精度型值:"+ran.nextDouble());
System.out.println("随机产生一个浮点型值:"+ran.nextFloat());
System.out.println("随机产生一个布尔类型值:"+ran.nextBoolean());
System.out.println("随机产生一个概率密度为高斯分布的双精度型值:"+ran.nextGaussian());
}
}












网友评论