2012-06-04 2 views
0

긴 변수에 값을 할당하려고 시도하지만 일식이 컴파일 오류를 표시합니다. 누구든지 이걸 잘못 처리 할 수 ​​있습니까? 나는 그 값이 긴 범위에 있는지를 확인하고 확신한다.긴 변수가 값을 허용하지 않습니다.

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; 
      } 
     } 

    } 

답변

3

당신은 그것이 long의 컴파일러에게 리터럴에 L를 추가해야합니다. Java의 정수 리터럴은 기본적으로 int입니다. 입력 한 숫자가 int에 맞지 않으므로 컴파일러가 불평합니다.

관련 문제