我是新手Scala程序员,遇到了奇怪的行为。
def balanceMain(elem: List[Char]): Boolean =
{
if (elem.isEmpty)
if (count == 0)
true;
else false;
if (elem.head == '(')
balanceMain(elem.tail, open, count + 1);....
基本上以上,如果elem.isEmpty
和,我想返回true count == 0
。否则,我想返回false。
至此,我已经阅读到,无需在scala中添加return语句。所以我在return
上面省略了。但是它不返回布尔值。如果我将return语句添加为return true
。它完美地工作。为什么会这样呢?
另外,为什么在scala中使用return语句被认为是不好的做法