您好,登錄后才能下訂單哦!
這篇“Java怎么生成指定范圍內的一個隨機整數”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“Java怎么生成指定范圍內的一個隨機整數”文章吧。
假設我們要生成一個【20,80】的隨機數,20可以取到,80也可以取到。
生成【min,max】范圍內的隨機整數
公式:
(int)( min + Math.random() * ( max - min + 1))
測試案例:生成一個【20,80】的隨機整數
public static void main(String[] args) { for (int i = 1; i <= 80; i++) { int number = (int) (20 + Math.random() * (80 - 20 + 1)); System.out.println(number); } }
可以多打印幾次測試結果。
需求:生成 0-10的隨機數,包含0和10
Random random = new Random(); int num = random.nextInt(10); //這樣寫的話,生成[ 0,9]的隨機整數數。
如果我們要包含0和10,應該這樣寫
int num = random.nextInt(10+1);
即是說括號里面的那個最大范圍數實際上是取不到的,所以我們要在括號里面+1。
nextInt()生成隨機整數規律公式:
需求:生成【min,max】范圍內的隨機整數,包含min和max
Random random = new Random(); int num = min + random.nextInt( max - min + 1);
參照需求生成【0,10】的隨機整數套用公式:
//生成【0,10】的隨機整數 Random random = new Random(); int num = 0 + random.nextInt( 10 - 0 + 1); // int num = random.nextInt(11);
測試案例代碼:
public static void main(String[] args){ System.out.println("==========Random對象調用方法產生隨機數==========="); int[] arr2 = new int[5]; Random random = new Random(); //產生【1-10】的隨機數 for (int i = 0; i < arr2.length; i++) { arr2[i] = random.nextInt(10 + 1); System.out.print(arr2[i] + " "); } }
隨機打印測試的數據(結果有隨機性,可以多運行幾次觀察結果)
系統隨機生成【1,100】一個隨機數,用戶從控制臺輸入一個數,兩者比較大小,若不相等,就提示用戶,他輸入的數字比系統生成的隨機數大還是小。
import java.util.Scanner; public class Demo18 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int randomNumber = (int) (1 + Math.random() * (100 - 1 + 1)); int userNumber; while (true) { System.out.println("請輸入您猜測的數字[1,100]:"); userNumber = sc.nextInt(); if (userNumber == randomNumber) { System.out.println("恭喜您猜對了"); System.out.println("系統生成的隨機數:" + randomNumber); break; } else if (userNumber > randomNumber) { System.out.println("您猜的數字偏大"); } else { System.out.println("您猜的數字偏小"); } } System.out.println("游戲結束!"); } }
以上就是關于“Java怎么生成指定范圍內的一個隨機整數”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。