Java 一组输入的开关盒?

Java 一组输入的开关盒?,java,switch-statement,Java,Switch Statement,鉴于我有以下期末考试: 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

鉴于我有以下期末考试:

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;

            }

        }

是否可以在一个块中同时为
c
c
编写一个案例(以及
r
r
等),而不是为
c
编写单独的案例和为
c
编写另一个案例

将病例分组的一种解决方案

case CLIPPING_LOWER:
case CLIPPING_UPPER: {
                    userPressedClipping();
                    break;
                }
case LOAD_UPPER:
case LOAD_LOWER:
    userPressedLoad();
    break;
另一种解决方案是在switch语句中只使用大写字母

char usersChoice = Character.toUpperCase(e.getKeyChar());

case LOAD_UPPER:
    userPressedLoad();
    break;

是的,比如说:

case LOAD_UPPER: case LOAD_LOWER:
{
    userPressedLoad();
    break;
}

可以使用usersChoice使用user Character.toLowerCase,这样就不必处理“R”、“C”等