Scala:找到类型不匹配,需要单位:布尔值

时间:2013-09-29 21:44:17

标签: 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: Int, Pos: Int): Int = 
    {
            if (Pos == chars.length)
            {
                count
            }
            else
            {
                if (chars(Pos) == '(')
                {
                    Count(count + 1, Pos + 1);
                }
                else
                {
                    Count(count - 1, Pos + 1);
                }
            }
    }     
  } 

1 个答案:

答案 0 :(得分:8)

{}分隔的代码块计算其中的最后一个表达式。在这里,您的最后一个表达式是一个定义(def Count),其定义为Unit。因此,将您期望评估的表达式移到最后。