在","上出错,考虑添加 "表达式"。

问题描述 投票:0回答:1

我想给妹妹做一个数学小游戏,截止目前,我有一个难度等级的类,一个是习题类。但是当我尝试在第4行设置难度级别时,得到 "Error on ","Consider adding "Expression""。这是什么意思,我该如何解决?我使用的是Processing 3.5.4。

  background(#FFFFFF);
  size(1280, 720);
  DifficultyLevel easy = new DifficultyLevel(10, ['+']);
}

class DifficultyLevel {
  int maxNumber;
  Character[] allowedOperators;

  DifficultyLevel (int mN, Character[] aO) {
    maxNumber=mN+1;
    allowedOperators=aO;
  }

  Exercise generateExcercise() {
    return new Exercise((int) random(maxNumber), (int) random(maxNumber), allowedOperators[(int) random(allowedOperators.length)]);
  }
}

class Exercise {
  int numberOne;
  int numberTwo;
  Character operator;

  Exercise(int one, int two, Character op) {
    numberOne=one;
    numberTwo=two;
    operator=op;
    if (numberOne < numberTwo && op=='-') {
      numberOne=numberOne+numberTwo;
      numberTwo=numberOne-numberTwo;
      numberOne=numberOne-numberTwo;
    }
  }

  boolean checkResult(float in) {
    float res=0;
    switch(operator) {
    case '+':
      res = numberOne + numberTwo;
      break;
    case '-':
      res = numberOne - numberTwo;
      break;
    case '·':
      res = numberOne * numberTwo;
      break;
    case '÷':
      res= numberOne / numberTwo;
    }
    return res==in;
  }
}

对了,我知道生成习题的代码不好,我以后会改进的。

processing
1个回答
1
投票

表达式语句 DifficultyLevel easy = new DifficultyLevel(10, ['+']); 在语法上是不正确的。

你必须创建一个字符数组

Character[] charArray = {'+'};

最后你可以使用数组。

DifficultyLevel easy = new DifficultyLevel(10, charArray);
© www.soinside.com 2019 - 2024. All rights reserved.