在case条件下使用char的switch语句?

Eva*_*n F 1 java switch-statement

我正在尝试编写一个使用char来表示每个case的switch语句.在我的教科书中,示例显示我可以使用char来执行此操作,但是当我编译程序时,我得到了这个:

    StudentInvoiceListMenuApp.java:54: error: incompatible types
        case 'R':
             ^
    required: String
    found:    char
    1 error
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

    switch (inputCode) {

        case 'R':
            System.out.println("\nEnter file name:");
            fileName = menuApp.nextLine();
            if (inputCode.trim().length() == 0) {
                break; // no file name entered
            }
Run Code Online (Sandbox Code Playgroud)

Jon*_*eet 5

看起来像是inputCode类型String,而不是char......所以,如果您使用的是Java 7,您只想将其更改为:

case "R":
Run Code Online (Sandbox Code Playgroud)

或者,更改为的类型,inputCodechar其他地方进行适当调整.(如果你没有使用Java 7,这将是你唯一的选择-但我怀疑你使用Java 7,否则你会得到不同的编译器错误.)