2012-05-10 153 views

回答

0

看看this JavaDoc的。一旦你有一個a lot的數值,做一個簡單的for循環,並使用Random類初始化隨機double值。

+0

'Random'只返回'flot','long','double' ...但不'BigDecimal' – Mehdi

+0

可惜的是,我們不會強迫誰downvote離開某種評論... – npinti

+0

的人@ user15992聽起來好像花了幾分鐘時間瀏覽BigDecimal類的javadoc。 BigDecimal有幾個構造函數,其中一些將雙精度作爲參數。 – mcfinnigan

0

試試這個代碼

class BigDecRand { 
public static void main(String[] args) { 
    String range = args[0]; 
    BigDecimal max = new BigDecimal(range + ".0"); 
    BigDecimal randFromDouble = new BigDecimal(Math.random()); 
    BigDecimal actualRandomDec = randFromDouble.divide(max,BigDecimal.ROUND_DOWN); 

    BigInteger actualRandom = actualRandomDec.toBigInteger(); 
} 

}

更多細節

+1

從類似的問題複製代碼,並假裝它是你的也許不是很有禮貌?除此之外,如果海報真的想要一個BigDecimal,我會假設他需要更高的精度,這個答案會給他什麼。 – jarnbjo