【问题标题】:64bit Integer has the same limit as 32bit integer [duplicate]64位整数与32位整数具有相同的限制[重复]
【发布时间】:2018-12-29 04:55:26
【问题描述】:

这只是一个简短的问题,但我仍然很好奇。当我用最大值 2147483647 初始化 int 变量时,没关系。但是当我想初始化一个long 并将其分配给它的最大值时,它给了我一个“数字太大”的错误

int i = 2147483647;
long j = 9223372036854775807;

【问题讨论】:

  • 向我们展示您的代码!
  • 几乎可以肯定,您忘记在文字末尾添加 L。检查欺骗链接。
  • @thatotherguy thx,忘记了“L”的那个细节:)

标签: java int max long-integer


【解决方案1】:

9223372036854775807int 文字,但太大而无法放入 int,因此出现错误。您可以使用 long 文字,而不是在其末尾添加 L

long j = 9223372036854775807L;
// Here --------------------^

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-25
    • 1970-01-01
    • 1970-01-01
    • 2018-01-05
    • 2021-05-05
    • 1970-01-01
    相关资源
    最近更新 更多