java中random的用法小結

java中存在兩個隨機函數,它們分別來自java.long.Math.random()和 java.util.Random();其中前者的適用范圍比較小,完全可以被後者取代。

一、java.lang.Math.random()方法的用法

①、方法類型:

public static double random();

此方法是一個無參,double類型返回值的公開靜態方法。

返回一個大於0的double類型數據,該值大於等於0.0且小於1.0,返回的是一個偽隨機選擇數,在該范圍內(幾乎)均勻分佈。

例如:

public class TestRandom{

	public static void main(String[] args){
		int sum=0;
		while(true){
			float a=(float)Math.random();
			System.out.println(a);
			sum++;
			if(sum==10)
				break;
		}
	}
}

二、 java.util.Random類用法

①、該類的構造方法:

Random():構造一個無參的隨機數生成器。使用系統時間的毫秒作為默認種子。

Random(long seed):使用 long數據類型的種子構造一個隨機數生成器。

②方法摘要:

boolean nextBoolean():返回下一個偽隨機數,它是取自此隨機數生成器序列的均勻分佈的 boolean值。

double nextDouble():返回下一個偽隨機數,它是

取自此隨機數生成器序列的、在 0.0 和 1.0 之間均勻分佈的 double 值。

float nextFloat():返回下一個偽隨機數,它是取自此隨機數生成器序列的、在 0.0 和 1.0 之間均勻分佈的 float 值。

int nextInt():返回下一個偽隨機數,它是此隨機數生成器的序列中均勻分佈的 int 值.

int nextInt(int n):返回一個偽隨機數,它是取自此隨機數生成器序列的、在 0(包括)和指定值n(不包括)之間均勻分佈的 int 值。

long nextLong():返回下一個偽隨機數,它是取自此隨機數生成器序列的均勻分佈的 long 值。

void setSeed(long seed):使用單個 long 種子設置此隨機數生成器的種子。

註意:如果用相同的種子創建兩個 Random 實例,則對每個實例進行相同的方法調用序列,它們將生成並返回相同的數字序列。

例如:

public class TestRandom{
    public static void main(String[] args){
        int sum=0;        
        java.util.Random random=new java.util.Random();
        for(int i=0;i<10;i++){
            int a=random.nextInt(10);
            System.out.print(a+"  ");
        }
        System.out.println("");
        for(int i=0;i<10;i++){
            int a=random.nextInt();
            System.out.println(a);
        }
        System.out.println("");
        for(int i=0;i<10;i++){
            double a=random.nextDouble();
            System.out.println(a);
        }
        System.out.println("");
        for(int i=0;i<10;i++){
            boolean a=random.nextBoolean();
            System.out.println(a);
        }
        System.out.println("");
    }
}

結果為:

到此這篇關於java中random的用法詳解的文章就介紹到這瞭,更多相關java中random用法內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: