2013-10-30 3 views
0

오류 :누락 된 심볼에 대해 컴파일 오류가 계속 발생하는 이유는 무엇입니까?

CreditCard.java:180: error: cannot find symbol 
     } while (cardNum7 != 0); 
       ^
    symbol: variable cardNum7 
    location: class CreditCard 
1 error 
Process javac exited with code 1 

코드 :

do { 
    //Declarations 
    long cardNum7 = 0; 
    //testing 
    System.out.print("Enter a card number (type 0 to end program): "); 
    cardNum7 = keyboard.nextLong(); 
    System.out.println("Your credit card is " + isValid(cardNum7)); 
} while (cardNum7 != 0); 

답변

3

이 루프 밖에 반영되지 않습니다, 그래서 당신은 루프 내에서 선언 cardNum7 있습니다. 사용 :

//Declarations 
long cardNum7 = 0; 
do { 
    //testing 
    System.out.print("Enter a card number (type 0 to end program): "); 
    cardNum7 = keyboard.nextLong(); 
    System.out.println("Your credit card is " + isValid(cardNum7)); 
} while (cardNum7 != 0); 
4

cardNum7이 계십니까-동안 블록 내부 을 선언됩니다. 그것은 특정 코드 블록 밖에 존재하지 않는, 그래서 당신은 여기에 액세스 할 수 없습니다 :

} while (cardNum7 != 0); 

당신은 while 문가 액세스 할 수 있도록 만들 DO-동안 전에 cardNum7를 선언 할 수 있습니다.

관련 문제