我有一个错误"一个'返回'表达式需要在一个函数与块体('{…}')">在代码片段:
fun validateMove(nam: String): Boolean {
for (i in 1..8) {
if (nam == first) {
if (Regex("[a-h][0-9][a-h][0-9]").matches(turn)) { return true
} else { return false }
} else if (Regex("[i-m][0-9][i-m][0-9]").matches(turn)) { return true
} else return false
}
}
我试着对这段代码进行了几次修改,在其他不同位置的"&;{}&;"变体中也做了,但仍然不起作用。我不知道是什么问题。如果有人能帮助我,我将非常感激。
for之外没有返回,所以如果for循环为0(我知道它不应该发生在这里,但这是计算机的思维方式),将不会有任何返回。如果您创建一个变量'result',并将结果存储在其中,然后在函数的最后放置返回结果,它应该工作。
(如果我正确阅读你的函数,它应该在第一个循环中返回一些东西,所以我真的不明白为什么这里有一个循环。)