0

私が次の決勝戦を持っていることを考えると:

private static final char CLIPPING_LOWER = 'c';
private static final char CLIPPING_UPPER = 'C';
private static final char RESET_LOWER = 'r';
private static final char RESET_UPPER = 'R';
private static final char LOAD_LOWER = 'l';
private static final char LOAD_UPPER = 'L';
private static final char QUIT_LOWER = 'q';
private static final char QUIT_UPPER = 'Q';

そして、スイッチケースを考えてみましょう:

        public void keyPressed(KeyEvent e) 
        {
            char usersChoice = e.getKeyChar();      // get the user's choice 
            switch(usersChoice)
            {
            case LOAD_UPPER:
                {
                    userPressedLoad();
                    break;
                }
            case LOAD_LOWER:
                {
                    userPressedLoad();
                    break;
                }                   

            case RESET_LOWER:
                {
                    userPressedReset();
                    break;
                }

            case RESET_UPPER:
                {
                    userPressedReset();
                    break;
                }

            case CLIPPING_LOWER:
                {
                    userPressedClipping();
                    break;
                }

            case CLIPPING_UPPER:
                {
                    userPressedClipping();
                    break;
                }

            case QUIT_UPPER:
                {
                    userPressedQuit();
                    break;
                }

            case QUIT_LOWER:
                {
                    userPressedQuit();
                    break;
                }                   

            default: 
                break;

            }

        }

別のケースと別のケースを書く代わりに、両方のケースを 1 つのブロック (および and ... など) に書くことcC可能rですRか?cC

4

4 に答える 4

2
case CLIPPING_LOWER:
case CLIPPING_UPPER: {
                    userPressedClipping();
                    break;
                }
于 2013-04-10T13:21:57.913 に答える