日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java随机数

發布時間:2024/8/1 java 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java随机数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在實際開發中產生隨機數的使用是很普遍的,所以在程序中進行產生隨機數操作很重要。在Java中主要提供兩種方式產生隨機數,分別為調用Math類的random()方法和Random類提供的產生各種數據類型隨機數的方法。

1、Math.random()方法

在Math類中存在一個random()方法,用于產生隨機數字,這個方法默認生成大于等于0.0小于1.0的double型隨機數,即0<=Math.random()<1.0,雖然Math.random()方法只可以產生0~1之間的double型數字,其實只要在Math.random()語句上稍加處理,就可以使用這個方法產生任意范圍的隨機數。

公式:(數據類型)(最小值+Math.random()*(最大值-最小值+1))

上述公式為產生的隨機數,范圍包含最小值與最大值。

1.1 生成隨機整數

/*** 生成隨機整數(包含起始與終止范圍)* * @author pan_junbiao* @param num1 起始范圍參數* @param num2 終止范圍參數* @return 隨機整數*/ public static int GetRandomNum(int num1, int num2) {int result = (int) (num1 + Math.random() * (num2 - num1 + 1));return result; }public static void main(String args[]) {// 生成100至999的隨機整數System.out.println("任意一個100值999的整數:" + GetRandomNum(100, 999)); }

1.2 生成隨機字符

/*** 生成隨機字符(包含起始與終止范圍)* * @author pan_junbiao* @param char1 起始范圍參數* @param char2 終止范圍參數* @return 隨機字符*/ public static char GetRandomChar(char char1, char char2) {char result = (char) (char1 + Math.random() * (char2 - char1 + 1));return result; }public static void main(String args[]) {// 獲取a~z之間的隨機字符System.out.println("任意小寫字符:" + GetRandomChar('a', 'z'));// 獲取A~Z之間的隨機字符System.out.println("任意大寫字符:" + GetRandomChar('A', 'Z'));// 獲取0~9之間的隨機字符System.out.println("0到9任意數字字符:" + GetRandomChar('0', '9')); }

執行結果:

?

2、Random類

除了Math類中的random()方法可以獲取隨機數之外,在Java中還提供了一種可以獲取隨機數的方式,那就是java.util.Random類。可以通過實例化一個Random對象創建一個隨機數生成器。

語法如下:

Random r=new Random();

其中,r是指Random對象。

在Random類中提供了獲取各種數據類型隨機數的方法,下面舉例幾個常用的方法。

方法說明
public int nextInt()返回一個隨機整數。
public int nextInt(itn)返回大于等于0且小于n的隨機整數。
public long nextLong()返回一個隨機長整型值。
public boolean nextBoolean()返回一個隨機布爾型值。
public float nextFloat()返回一個隨機浮點型值。
public double nextDouble()返回一個隨機雙精度型值。
public double nextGaussian()返回一個概率密度為高斯分布的雙精度值。

2.1 生成各種類型的隨機數

【示例】使用Random對象生成各種類型的隨機數,并輸出結果。

import java.util.Random;/*** 使用Random對象生成各種類型的隨機數* @author pan_junbiao*/ public class RandomTest {public static void main(String args[]){// 實例化一個Random類Random r = new Random();// 隨機產生一個整數System.out.println("隨機產生一個整數:" + r.nextInt());// 隨機產生一個大于等于0且小于10的整數System.out.println("隨機產生一個大于等于0且小于10的整數:" + r.nextInt(10));// 隨機產生一個布爾類型的值System.out.println("隨機產生一個布爾類型的值:" + r.nextBoolean());// 隨機產生一個雙精度型的值System.out.println("隨機產生一個雙精度型的值:" + r.nextDouble());// 隨機產生一個浮點型的值System.out.println("隨機產生一個浮點型的值:" + r.nextFloat());// 隨機產生一個概率密度為高斯分布的雙精度值System.out.println("隨機產生一個概率密度為高斯分布的雙精度值:" + r.nextGaussian());} }

運行結果:

2.2?生成隨機字符串

【示例】使用Random對象隨機生成字符串。

import java.util.Random;/*** 使用Random對象隨機生成字符串* @author pan_junbiao**/ public class RandomString {public static void main(String[] args){System.out.println("隨機生成6位數的字符串:" + getRandomString(6));System.out.println("隨機生成8位數的字符串:" + getRandomString(8));System.out.println("隨機生成10位數的字符串:" + getRandomString(10));}/*** 隨機生成字符串* @param length 隨機字符串長度*/public static String getRandomString(int length){String base = "abcdefghijklmnopqrstuvwxyz0123456789";Random random = new Random();StringBuffer sb = new StringBuffer();for(int i=0; i< length; i++){int number = random.nextInt(base.length());sb.append(base.charAt(number));}return sb.toString();} }

執行結果:

總結

以上是生活随笔為你收集整理的Java随机数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。