常用的方法有三个
1.使用Math.random()
这个是j2se里的方法,j2me没有。(我没有用过me)
Math.random产生的是0到1的double型,可以乘倍数得到其他范围随机数
用法:(数据类型)(最小值+Math.random()*(最大值-最小值+1))
产生1到100的随机数
1+Math.random()*(100 - 1 + 1)
//需要是整数的话加(int)
2.通过random类
java.util包中有一个random类,可以创建random类对象来产生各种数据类型的随机数,很常用。
java.util.Random类有两种方式构建方式:带种子和不带种子
不带种子:
如果没有提供种子数,Random实例的种子数将是当前时间的毫秒数
此种方式将会返回随机的数字,每次运行结果不一样
public class RandomTest {
public static void main(String[] args) {
//不设种子
java.util.Random r=new java.util.Random();
for(int i=0;i<10;i++){
System.out.println(r.nextInt());
}
}
带种子:
此种方式,无论程序运行多少次,返回结果都是一样的
public static void main(String[] args) {
//设置种子为10
java.util.Random r=new java.util.Random(10);
for(int i=0;i<10;i++){
System.out.println(r.nextInt());
}
}
3.通过currentTimeMillis()方法
这个获取的是当前时间到1970年1月1号0点0分0秒的毫秒数,long型,可以当作随机数。
不常用
产生随机数还是用random类好。