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

歡迎訪問 生活随笔!

生活随笔

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

java

Java中的随机数

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

? ? ? ? Java產生可以隨機數的有兩個類,一個是Random類,另一個是Math類中的random()方法。

一、Random類

? ? ? ? 在java.util包中有一個Random類,該對象的幾個方法可以生成不同數據類型的隨機數。如nextInt(),nextFloat(),nextLong(),nextBoolean()分別生成的是int整形,float浮點型,double浮點型,boolean布爾類型的隨機數,也必須要用制定的數據類型的變量接收。

? ? ? ? 例如:輸出五個隨機的布爾類型

import java.util.Random;public class Test01 {public static void main(String[] args) {Random rd = new Random();for(int i=0;i<5;i++) {boolean temp = rd.nextBoolean();System.out.println(temp);}} }

????????

????????此外,可以生成int整形的nextInt()方法,有一個重載方法nextInt(int bound),多了一個傳入的bound整形,該方法可以使其生成[0,bound)區間的整形隨機數。bound不能<=0會報錯。

? ? ? ? 例如:隨機輸出5個0-99的隨機數。

import java.util.Random;public class Test01 {public static void main(String[] args) {Random rd = new Random();for(int i=0;i<5;i++) {int temp = rd.nextInt(100);System.out.println(temp);}} }

? ? ? ? 輸出結果也是隨機的0-99:

? ? ? ? 我們發現,nextLong()同樣是生成整形的隨機數,但是沒有指定限制隨機區間的重載函數,那么就可以使用人為的方式來限制隨機區間。

? ? ? ? 1. nextLong()%n使其隨機數區間在(-n,n)

? ? ? ? 例如 : 輸出(-10,10)的5個隨機數。

import java.util.Random;public class Test01 {public static void main(String[] args) {Random rd = new Random();for(int i=0;i<5;i++) {Long temp = rd.nextLong()%10;System.out.println(temp);}} }

????????

? ? ? ? 2.使用 Math.abs()? 限制隨機數為非負數。

? ? ? ? 例如:輸出5個 0-9的隨機數

public class Test01 {public static void main(String[] args) {Random rd = new Random();for(int i=0;i<5;i++) {Long temp = Math.abs( rd.nextLong())%10;System.out.println(temp);}} }

?????????其中的nextFloat(),nextDouble()方法分別生成0-1的8位有限小數,16位有限小數的隨機數。

? ? ? ? 例如:輸出5個16位有限小數的隨機數。

public class Test01 {public static void main(String[] args) {Random rd = new Random();for(int i=0;i<5;i++) {double temp = Math.abs( rd.nextDouble())%10;System.out.println(temp);}} }

????????

二、Math.random()方法

? ? ? ? 生成的隨機數和Random類的nextDouble()類似,也是16位有限小數。

? ? ? ? 例如:輸出5個0-1區間的16位有限小數的隨機數。

import java.util.Random;public class Test01 {public static void main(String[] args) {Random rd = new Random();for(int i=0;i<5;i++) {double temp = Math.random();System.out.println(temp);}} }

總結

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

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