2015-04-07 14 views
2

我很新的編程,我不能爲我的生活工作,爲什麼我收到錯誤:「下一個(INT)在java.util.Random中保護訪問」爲什麼next(int)在java.util.Random中保護訪問?

這裏是代碼的錯誤發生在...

 /** 
* Generates Random Width Multiplier 
*/ 
public static double randomRMultiplier() { 
    Random randM = new Random(); 
    double randomMultiplier; 

    //Calculates a random value between 12 and 20 
    //(Divided by 10 to make a multiplier) 
    do { 
     switch(difficultyMark) { 
     case 1: 
      randomMultiplier = (randM.next((21-11) + 1) + 11); //Randoms between 11 and 21 
      break; 

     case 2: 
      randomMultiplier = (randM.nextInt((20-12) + 1) + 12); //Randoms between 12 and 20 
      break; 

     case 3: 
      randomMultiplier = (randM.nextInt((19-13) + 1) + 13); //Randoms between 12 and 20 
      break; 
     } 
    } while (randomMultiplier > 14 & randomMultiplier < 18); //Excludes 15,16,17 as they are too similar to golden values(16-->1.6) 

    randomMultiplier = randomMultiplier/10; //Divide by ten to make decimal multiplies 

    return randomMultiplier; 
} 

回答

6

我不認爲你的意思是直接使用。

它實際上是由所有其他next*通話使用的「實用」的功能,並且是可以,如果你繼承Random更適合的類,如東西,這不是一個線性同餘一個被過度纏身。

根據您的代碼,我建議您在意圖使用nextInt時意外使用了next

+1

啊!謝謝你! – JL9