2014-11-04 4 views
-1

그래서 긴 코드를 짧게 만들 경우 여기 있습니다.JOptionPane이 마지막 케이스를 선택하는 것을 멈추는 방법?

예를 들어 3 개의 버튼이있는 JOptionPane이 있습니다.

boolean loopGameInterface = true; 

while(loopGameInterface){ 

int chooseGame = JOptionePane........ 

    switch(chooseGame) { 

    case 0: 


    case 1: 


    case 2: 

    System.exit(0); 

    } 

} 

문제는 두 번째 버튼 (예)을 클릭하면 사례 1로 이동한다는 것입니다. 괜찮습니다. 그러나 case 1의 코드가 실행되면 gameInterface를 루핑하는 대신 직접 케이스 2로 이동하여 프로그램을 종료합니다.

답변

2

각 사례 끝에 break;을 추가해야합니다. JOptionPane을 사용할 때뿐만 아니라 모든 스위치 명령문에 해당합니다.

0

break 문을 추가하지 않았기 때문에 해당 명령문이 true입니다. break를 추가하지 않으면 일치하는 case 아래의 모든 case가 실행됩니다.

switch(ch) { 
    case 1: 
    /* some code without break */ 
    case 2: 
    /* some code without break */ 
    case 3: 
    System.exit(0); 
} 
위의 예에서

ch=1이 모든 case 2도 실행됩니다 경우 다음 case 3 : 예를 들면. ch=2 인 경우 case 3case 2 이하이므로 case 2case 3 만 실행됩니다. 따라서 각 경우마다 break을 추가해야합니다.

0
switch(chooseGame) { 

case 0: /* Your code */ 
     break; 
case 1: /* Your code */ 
     break; 
case 2: 
     System.exit(0); 

default : "Give some default case too" 

} 
관련 문제