java - 为什么这个 switch case 在 Netbeans 中不起作用?

标签 java switch-statement

Switch case 正在获取值,但只有默认 case 正在运行。

int z = Integer.parseInt(x);
JOptionPane.showMessageDialog(null,+z);
    switch (z) {
    case ('1'):
        C.SetEmpInformation();
        break;
    case ('2'):
        C.UpdateEmpInformation();
        break;
    default:
        JOptionPane.showMessageDialog(null, "Invalid Identity");
}

最佳答案

删除 case 语句中的单引号。它们将作为 char 进行匹配,而不是作为 int 进行匹配。 “1”是一个字符,与数字 1 非常不同。

 switch (z) {
   case 1: /* .... */
   case 2: /* .... */
   default : /* .... */
}

您也不需要括号。

关于java - 为什么这个 switch case 在 Netbeans 中不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52907617/

相关文章:

java - 循环切换以打印输出值

c++ - "default"switch case 是否会影响跳转表优化?

javascript - 在 PC 和移动浏览器中运行的隐藏和显示切换

java - 部署 Spring 应用程序时出现 NullPointerException

Java Apache POI 错误

ruby - 'case' 语句如何使用常量?

javascript - Jquery Javascript将if语句变成case语句不起作用

java - 使用 Ant 项目作为 Gradle 子项目

java - Eclipse 错误 : Exception in thread "AWT-EventQueue-0" java. lang.NullPointerException

java - 如何在 Struts 2 中声明 "unknown handlers"?