Scala:发现类型不匹配,所需单位:布尔值
我一直在尝试运行这段代码,但不知何故遇到了“单元不匹配,布尔预期错误”。我已经讨论了关于Stackoverflow的各种问题,但没有找到任何具体的答案Scala:发现类型不匹配,所需单位:布尔值,scala,functional-testing,Scala,Functional Testing,我一直在尝试运行这段代码,但不知何故遇到了“单元不匹配,布尔预期错误”。我已经讨论了关于Stackoverflow的各种问题,但没有找到任何具体的答案 def balance(chars: List[Char]): Boolean = { var i = 0; var j = 0; if (Count(i, j) == 0){ true } else{ false } def Count(count: I
def balance(chars: List[Char]): Boolean =
{
var i = 0;
var j = 0;
if (Count(i, j) == 0){
true
}
else{
false
}
def Count(count: Int, Pos: Int): Int =
{
if (Pos == chars.length)
{
count
}
else
{
if (chars(Pos) == '(')
{
Count(count + 1, Pos + 1);
}
else
{
Count(count - 1, Pos + 1);
}
}
}
}
由
{}
分隔的代码块计算为其中的最后一个表达式。这里,最后一个表达式是定义(def Count
),其计算结果为Unit
。因此,将您希望计算的表达式移到末尾。BTW,如果(Count(i,j)==0){true}否则{false}与Count(i,j)==0相同