我可以在java中传递大于999 999 999的数字作为参数吗?
当我这样做时,它会给出编译器错误,类型的文字 999 999 999 9 超出范围
passNumber(9999999999);
public String passNumber(long number){
if(number > 999999999)
throw new BigNumberException("Number too large")
}
我可以在java中传递大于999 999 999的数字作为参数吗?
当我这样做时,它会给出编译器错误,类型的文字 999 999 999 9 超出范围
passNumber(9999999999);
public String passNumber(long number){
if(number > 999999999)
throw new BigNumberException("Number too large")
}
这是因为 9,999,999,999 被编译器视为一个int
并且大于Integer.MAX_VALUE
(2,147,483,647)。
您可以使用long
: 9999999999L
。
用于9999999999L
告诉编译器它是一个长文本,而不是一个 int 文本。
这是因为 90 亿超出了整数范围(有符号 int 最高为 2,147,483,647,无符号整数最高为 4,294,967,295)。
在这里查看以了解更多信息。