2017-04-07 83 views
0

我有一個值需要閱讀。該值是一個我轉換爲int的十六進制。 我有幾個可能的值,但switch語句接受所有情況。switch語句不轉換

int messValue = Integer.parseInt(messType,16); 
    switch(messValue) 
    { 
    case 160 : System.out.println(messType.toUpperCase() + " It's a financial Message request"); 
    case 161 : System.out.println(messType.toUpperCase() + " It's a financial Message response"); 
    case 162 : System.out.println(messType.toUpperCase() + " It's a Reversal message request"); 
    case 163 : System.out.println(messType.toUpperCase() + " It's a Reversal message Acquirer Repeat"); 
    case 164 : System.out.println(messType.toUpperCase() + " It's a Reversal message response"); 
    case 165 : System.out.println(messType.toUpperCase() + " It's a Network message request"); 
    case 166 : System.out.println(messType.toUpperCase() + " It's a Network message response"); 
    case 167 : System.out.println(messType.toUpperCase() + " It's a Network message response issuer"); 
    default : break; 
    } 

這裏的輸出,當輸入爲「A0」:

A0 It's a financial Message request 
A0 It's a financial Message response 
A0 It's a Reversal message request 
A0 It's a Reversal message Acquirer Repeat 
A0 It's a Reversal message response 
A0 It's a Network message request 
A0 It's a Network message response 
A0 It's a Network message response issuer 
+4

開關的情況下一個case,除非你加入在處理一個案件結束時打破陳述。 –

+1

在每個'case'語句的末尾使用'break;'。 – Berger

+3

必須有成千上萬的重複這個問題... –

回答

2

「到秋季」添加break;每一個最後的內case語句後