我正在尝试为long变量赋值,但eclipse显示编译错误。任何人都可以解决这个问题吗?我已经检查并确信该值在很长的范围内。
public static void main(String[] args) {
**long num = 600851475143;**
for(long i = num/2; i<1; i--) {
if(num%i == 0 && isPrime(i) == true) {
System.out.println(i);
break;
}
}
}
答案 0 :(得分:5)
答案 1 :(得分:3)
您必须将L
附加到文字以告诉编译器它是long
。 Java中的整数文字默认为int
;由于您输入的数字不适合int
,编译器会抱怨。