新语法(缩进)不允许使用 if 语句

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

这是我的代码。这个想法是等级从 0 到 5,并且不能更高,因此使用 if 命令。 代码中突出显示的是显然不再允许的部分(等级 > 5)- 我收到一个语法错误,指出:“在 -new-syntax 下不允许使用此构造。”

我刚刚开始学习 scala,并尝试用谷歌搜索答案,但没有找到任何东西

def overallGrade(project: Int, eBonus: Int, part: Int) =
  var grade = project + eBonus + part
  if (*grade > 5*) {
    grade = 5
  }
  grade
 end overallGrade

我应该做什么来修复它?

我在谷歌上找不到答案

scala scala-3
1个回答
1
投票

您的 if 语句中不需要括号:

object GradeCalculator:

  def overallGrade(project: Int, eBonus: Int, part: Int): Int =
    var grade = project + eBonus + part
    if grade > 5 then
      grade = 5
    grade

  def main(args: Array[String]): Unit =
    val projectScore = 4
    val eBonusScore = 1
    val participationScore = 2
    val totalGrade = overallGrade(projectScore, eBonusScore, participationScore)
    println(s"Final Grade: $totalGrade")

end GradeCalculator

输出:

Final Grade: 5

尝试scastie.scala-lang.org

© www.soinside.com 2019 - 2024. All rights reserved.