java - 如何在java中将大于999 999 999的数字作为参数传递
Posted
技术标签:
【中文标题】java - 如何在java中将大于999 999 999的数字作为参数传递【英文标题】:How can I pass number greater than 999 999 999 as parameter in java 【发布时间】:2012-07-15 09:19:27 【问题描述】:我可以在java中传递大于999 999 999的数字作为参数吗?
当我这样做时,它会给出编译器错误,类型的文字 999 999 999 9 超出范围
passNumber(9999999999);
public String passNumber(long number)
if(number > 999999999)
throw new BigNumberException("Number too large")
【问题讨论】:
请参阅this 和this 问题。 【参考方案1】:这是因为 9,999,999,999 被编译器视为 int
并且大于 Integer.MAX_VALUE
(2,147,483,647)。
您可以使用long
:9999999999L
。
【讨论】:
【参考方案2】:使用9999999999L
告诉编译器它是一个long 字面量,而不是一个int 字面量。
【讨论】:
【参考方案3】:这是因为 90 亿超出整数范围(有符号 int 最高为 2,147,483,647,无符号整数最高为 4,294,967,295)。
查看here 了解更多信息。
【讨论】:
以上是关于java - 如何在java中将大于999 999 999的数字作为参数传递的主要内容,如果未能解决你的问题,请参考以下文章