【问题标题】:How can I pass number greater than 999 999 999 as parameter in javajava - 如何在java中将大于999 999 999的数字作为参数传递
【发布时间】: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")
 }

【问题讨论】:

标签: java


【解决方案1】:

这是因为 9,999,999,999 被编译器视为 int 并且大于 Integer.MAX_VALUE (2,147,483,647)。

您可以使用long9999999999L

【讨论】:

    【解决方案2】:

    使用9999999999L 告诉编译器它是一个long 字面量,而不是一个int 字面量。

    【讨论】:

      【解决方案3】:

      这是因为 90 亿超出整数范围(有符号 int 最高为 2,147,483,647,无符号整数最高为 4,294,967,295)。

      查看here 了解更多信息。

      【讨论】:

        猜你喜欢
        • 2013-10-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-12-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多