1. 程式人生 > >使用Random隨機生成[min,max]之間的整數:

使用Random隨機生成[min,max]之間的整數:

一個 print author new util nbsp rgs 想要 表示

如下代碼是生成範圍在min到max之間的隨機整數(包括min和max):

import java.util.Random;

/**
 * 生成[min,max]的隨機整數
 * @author meikai
 * @version 2017年11月4日 上午11:04:52
 */
public class RandomTest {
    
    public static void main(String args[]) {
        int num =new RandomTest().test(5,12);
        System.out.println("返回的是"+num);
                
    }
    
    
/** * 返回[min,max]的隨機整數 * @param min * @param max * @return */ public int test(int min ,int max) { Random r = new Random(); int num =r.nextInt(max+1-min)+min; return num; } }

現在講解 int num =r.nextInt(max+1-min)+min 是怎麽生成我們想要範圍的隨機整數的:

1、Random類的 nextInt()方法生成隨機的int值,該值介於int的區間,也就是-2的31次方到2的31次方-1之間;

2、nextInt(int max)方法生成一個隨機的int值,該值介於[0,max)的區間, ‘ [ ‘符號表示包括,而 ‘) ‘表示不包括,所以該方法生成包括0但不包括max的隨機整數;

3、nextInt(int max+1)方法生成一個隨機的int值,該值介於[0,max]的區間;

4、nextInt(max+1-min)+min,‘max+1-min‘表示我們要的範圍總共有多少個數字,‘nextInt(max+1-min)‘生成的是這麽多個數字中隨機的一個,生成後加上min,最終為介於[min,max]數值的隨機數。

使用Random隨機生成[min,max]之間的整數: