Intellij long"整数值太大"但在long.maxvalue范围内

vac*_*ach 8 javac intellij-idea long-integer

整数错误太大

这可能是一个愚蠢的事情,但编译器如何才能显示这一点Long.Max = 9223372036854775807

Hav*_*eat 16

您必须Long在Java中使用以a结尾的文字L,添加L到您的整数将纠正您的问题,如下所示:Long s = 9223372036854775806L

这是因为默认情况下,Java将所有整数解释为32位(int),后缀L可确保将整数解释为64位.


roe*_*gol 5

只需在它的末尾加上 'l' 或 'L' 就可以了,例如:

long a = 9223372036854775807L;
Run Code Online (Sandbox Code Playgroud)


Eve*_*0id 5

Long s = 9223372036854775806L