java - 64 位整数与 32 位整数具有相同的限制

标签 java int max long-integer

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

int i = 2147483647;
long j = 9223372036854775807;

最佳答案

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

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

关于java - 64 位整数与 32 位整数具有相同的限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51449984/

相关文章:

c - c 中的二进制数和字符串表示

java - 我想通过递归算法在链表中找到最大节点,但我的代码有问题

mysql - 从 COUNT 中选择最大值和最小值 - MySQL

r - 在 R 中查找具有模式的列的最大值/最小值

Java 客户端调用 Windows 集成身份验证 Web 服务

java - 打破2个嵌套循环 "at once"

c - 如何在c中将一些long double转换为long int?

java - Struts2 忽略 applicationContext 中的 Action 类值属性

java - 为什么 math.pow 本身不能处理整数? (地板/天花板也是)

c - 从数组中读取两个字符作为C中的一个十六进制数