java - Greenfoot/Java - 不兼容的类型 : boolean cannot be converted to int

标签 java arrays greenfoot

一位新用户...我觉得我的代码有误。

我想寻求帮助,因为我对 Greenfoot 程序比较陌生。手头的问题如问题中所述:编译我的代码时收到“不兼容类型”错误,无论我做了什么修改,我似乎都无法修复它。具体出现问题的部分代码如下:

        public void answerValidation()
      {
          int ansCorrect = 0;
          int ansIncorrect = 0;

          for(int i = 0; i <= 10; i++)
          {
              answerArray[0] = array1[0] * array2[0];
              if(answer != answerArray[0])
              {
                  ansIncorrect = ansIncorrect + 1;
                  JOptionPane.showMessageDialog(null, array1[0] + "*" + array2[0] + "=" + answerArray[0]);
              }
              else
              {
                  ansCorrect = ansCorrect + 1;
              }
          }

      switch(ansCorrect)
      {
          case 10:  JOptionPane.showMessageDialog(null, "Wow! You got all the questions right!");
                    break;

          case ansCorrect>=8 && ansCorrect < 9:    JOptionPane.showMessageDialog(null, "You scored" + ansCorrect + "out of 10. 80%-90% scored.");
                    break;

          case ansCorrect >=6 && ansCorrect < 7:   JOptionPane.showMessageDialog(null, "You scored" + ansCorrect + "out of 10. Keep practicing in Lv2 to improve.");
                    break;

          case ansCorrect == 0 && ansCorrect < 6:   JOptionPane.showMessageDialog(null, "You scored" + ansCorrect + "out of 10. Keep practicing in Lv1 to improve.");
                    break;
      }

}

编译错误指出它位于“&& ansCorrect < 9”的位置,尽管我不知道如何修复它。

欢迎任何更正/请求查看我的代码,非常感谢那些提供帮助的人!

最佳答案

case ansCorrect>=8 && ansCorrect < 9: 

switch case 中的参数必须是 int wnere case ansCorrect>=8 && ansCorrect < 9:解析为 boolean 值。

如果您在 ansCorrect>=8 && ansCorrect < 9 看到逻辑

正是case 8 ??与case ansCorrect >=6 && ansCorrect < 7:相同那应该写成 case 6 .

关于case ansCorrect == 0 && ansCorrect < 6 , 你可以编写多个具有相同功能的案例

case 0;
case 1;
case 2;
case 3;
case 4;
case 5;
JOptionPane.showMessageDialog(null, "You scored" + ansCorrect + "out of 10. Keep practicing in Lv1 to improve.");
break;

关于java - Greenfoot/Java - 不兼容的类型 : boolean cannot be converted to int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32518490/

相关文章:

java - 任何使用 Orient DB 数据库的开源软件?您有使用该数据库的经验吗?

java - 如何将 JavaFX ImageView 转换为 InputStream

java - Hibernate 5 警告,如何解决这些问题?

c# - 如何在C#中通过axWindowsMediaPlayer播放音频?

java - Greenfoot 计数器减一

java 无法应用于给定类型

java - 制作一种将对象随机放置在屏幕上的方法。

java - 调用邮政编码 -- Android

arrays - PostgreSQL 索引 JSONB 数组

python - 4D NumPy 数组中每个 2D 矩阵的最大值