谁能告诉我为什么在使用 long 数据类型时出错
Can anyone tell me why it is giving error, while using long datatype
long x = sc.nextLong();
if (x < 9223372036854775807 && x > -9223372036854775808)
{
System.out.println("* long");
}
if() 条件行出错
The literal 9223372036854775807 of type int is out of range
谁能告诉我如何重新爱它?
long x = sc.nextLong();
if (x < 9223372036854775807L && x > -9223372036854775808L) {
System.out.println("* long");
}
要将数字文字指定为 long 而不是 int ,请在文字末尾添加 L(代表长)。最后没有“L”,编译器将数字识别为整数,并且 if 语句中指定的整数超出了整数的范围。
long x = sc.nextLong();
if (x < 9223372036854775807 && x > -9223372036854775808)
{
System.out.println("* long");
}
if() 条件行出错
The literal 9223372036854775807 of type int is out of range
谁能告诉我如何重新爱它?
long x = sc.nextLong();
if (x < 9223372036854775807L && x > -9223372036854775808L) {
System.out.println("* long");
}
要将数字文字指定为 long 而不是 int ,请在文字末尾添加 L(代表长)。最后没有“L”,编译器将数字识别为整数,并且 if 语句中指定的整数超出了整数的范围。