2016-04-10 218 views
0

我需要幫助在java中製作一個程序,該程序允許您在textField中編寫一個數字,然後使用i =(int )(Math.random()* 10.0)。例如,如果我在textField中編寫5,程序將從0-9生成5個隨機數。使用math.random在java中生成一定數量的隨機數

感謝

+0

Java!= JavaScript - 請說明您選擇的語言 - 然後閱讀我們的[問]頁面以改善您的問題 – ochi

+2

你做了些什麼嗎? – epoch

+0

1.這個問題太簡單了。 2. Java或javaScript? – Fka

回答

-1

好,因爲你要使用的Math.random()方法嘗試以下操作:

int times = 5;//how many numbers to output 

    for(int i = 0; i < times; i++) 
    { 
     System.out.println((int)(Math.random()*10)); 
     //you must cast the output of Math.random() to int since it returns double values 
    } 

我再乘以10,因爲的Math.random()返回一個值大於或等於0.0且小於1.0。

+1

將您的循環更改爲「我<次」 - 您現在正在打印6個數字 – tucuxi

+0

我剛剛給了一個示例值,我從來沒有說過它會打印五個數字。 無論如何,我改變它以防止將來的混亂感謝指出。 – theVoid

0
int x = value entered in textfield; 
int generatedRandomNumber = 0; 
java.util.Random rand = new java.util.Random(); 
for(int i=0 ; i<x ; i++) { 
    generatedRandomNumber=rand.nextInt(10);//here you have your random number, do whatever you want.... 
} 
+0

修復您的縮進 - 它會讓您的代碼更易於閱讀。此外,不要讓你的線超過80列 - 只需將註釋放在另一行 – tucuxi

1

使用新的Java 8流API:

int n = Integer.parseInt(myTextField.getText()); 
int[] random = ThreadLocalRandom.current().ints(0, 10).limit(n).toArray(); 
  • 使用當前線程局部隨機(建議在創建一個新的Random實例)範圍內
  • 創建整數隨機流[0 ..10) - > 0..9
  • 在生成了n個數字後流終止
  • 流結果被收集並作爲數組返回