Powrót w Scali
Jestem początkującym programistą Scala i natknąłem się na 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);....
Przede wszystkim chcę zwrócić prawdziwą, jeślielem.isEmpty
icount == 0
. W przeciwnym razie chcę zwrócić false.
Teraz powyżej przeczytałem, że nie ma potrzeby dodawania instrukcji zwrotu w scali. Więc pominąłemreturn
powyżej. Ale nie zwraca wartości logicznej. Jeśli dodam instrukcję zwrotu jakoreturn true
. działa doskonale. Dlaczego tak jest?
Ponadto, dlaczego złym zwyczajem jest zwracanie oświadczeń w scali