Как вы обычно используете функциональный способ для замены if-without-else в Scala?Заменить if-without-else в Scala
Например, как этот типичный шаблон в императивном стиле:
var list = List("a", "b", "c")
if (flag) { // flag is boolean variable
// do something inside if flag is true
list = "x" :: list
}
// if flag is false, nothing happened
Я имею в виду, как это сделать его функциональным:
val tempList = List("a", "b", "c")
val list = if (flag) "x" :: tempList else tempList
Может ли быть лучшим способом без использования переменного посреднического ?
Так кто может поделиться, как вы устраняете if-without-else в scala?
В функциональном программировании, там обычно не 'if' без' else' - вы всегда должны получить * некоторые * значение обратно. Вам может не потребоваться явно объявлять его, когда вы используете функцию, которая предоставляет значение по умолчанию. – Bergi
Ваша вторая версия выглядит хорошо для меня. Ясно, что происходит, нет изменчивых варсов, нет проблем –