Jestem początkującym programistą Scala i napotkałem dziwne zachowanie.
def balanceMain(elem: List[Char]): Boolean =
{
if (elem.isEmpty)
if (count == 0)
true;
else false;
if (elem.head == '(')
balanceMain(elem.tail, open, count + 1);....
Powyżej w zasadzie chcę zwrócić prawdę, jeśli elem.isEmptyicount == 0 . W przeciwnym razie chcę zwrócić wartość false.
Powyżej przeczytałem, że nie ma potrzeby dodawania instrukcji return w scali. Więc pominąłem returnpowyżej. Ale nie zwraca wartości logicznej. Jeśli dodam instrukcję zwrotu jako return true. działa idealnie. Dlaczego tak się dzieje?
Ponadto, dlaczego stosowanie instrukcji powrotu w scali jest uważane za złą praktykę