2012-07-15 92 views
2

我可以將大於999 999 999的數字作爲參數傳遞給java。如何傳遞大於999 999 999的數字作爲java中的參數

當我不喜歡這一點,讓編譯器錯誤類型的字面999 999 999 9超出範圍

passNumber(9999999999); 

public String passNumber(long number){ 
    if(number > 999999999) 
     throw new BigNumberException("Number too large") 
} 
+0

請參見[this](http://stackoverflow.com/questions/8924896/java-long-number-too-large-error)和[this](http://stackoverflow.com/questions/769963/javas -l-號 - 長規格問題)問題。 – Lion 2012-07-15 09:27:56

回答

8

這是因爲9999999999是視爲int由編譯器和大於Integer.MAX_VALUE(2,147,483,647 )。您可以使用long9999999999L

6

使用9999999999L告訴編譯器它是一個長文字,而不是一個整型文字。

3

這是因爲90億是不在整數範圍內(有符號整數2,147,483,647和無符號整數直到4,294,967,295)。

看一看here瞭解更多。