Java基础知识点_03

JAVA中生成随机数的方法

第一种:Math.random()

返回的数值是[0.0,1.0)的double型数值,由于double类数的精度很高,可以在一定程度下看做随机数,借助(int)来进行类型转换就可以得到整数随机数了,代码如下。

(数据类型)(最小值+Math.random()*(最大值-最小值+1))

第二种: JDK提供了一个类, 类名Random, 主要功能 : 可以生成指定范围内的任意一个随机数, Random来自于java.util路径下

double nextDouble()//[0.0, 1.0)
int nextInt()//返回int类型随机数
int nextInt(int n)
//返回[0, n)之间的随机数

第三种:currentTimeMillis() (了解)

方法返回从1970年1月1日0时0分0秒(这与UNIX系统有关)到现在的一个long型的毫秒数,取模之后即可得到所需范围内的随机数。

public static void main(String[] args) { 
int max=100,min=1; 
long randomNum = System.currentTimeMillis(); 
int ran3 = (int) (randomNum%(max-min)+min);
 System.out.println(ran3); 
}

案例: 1-100之间的任意一个随机整数

package com.tohka;

import java.util.Random;

//案例 : 1-100之间的任意一个随机整数
public class Demo3 {
    public static void main(String[] args) {
        //第一种 Math.Random()
        //(数据类型)(最小值+Math.random()*(最大值-最小值+1))
        int ran1 = (int)(1+ Math.random()*(100-1+1)) ;
        System.out.println(ran1);
        //第二种 random类 nextDouble
        Random random = new Random();
        int ran2 =  (int)(1+random.nextDouble()*(100-1+1));
        System.out.println(ran2);
        //第三种 random类 nextInt
        int ran3 = random.nextInt(100)+1;
        System.out.println(ran3);
        //第四种 System.currentTimeMillis()
        long currentTimeMillis = System.currentTimeMillis();
        int ran4 = (int)(currentTimeMillis%(100-1)+1);
        System.out.println(ran4);
    }
}

posted @ 2021-07-14 21:22  Lucky_龍  阅读(60)  评论(0)    收藏  举报