scala "print (_)" ничего не выводит, почему? - PullRequest
0 голосов
/ 07 ноября 2018

У меня есть следующий код:

val O = Array(3, "str")
for (o <- O) print(o)
println("\n===")
for (_ <- O) print(_)
println("\n===")

печатает

3str
===

===

Почему второй for + print (_) ничего не печатает? Есть объяснения?

1 Ответ

0 голосов
/ 07 ноября 2018

for (_ <- O) перевод : извлекать каждый элемент из O, но ни к чему их не назначать. Просто отбросьте эти значения.

print(_) перевод : Для каждого неиспользуемого элемента из O используйте eta extension , чтобы превратить метод print() в правильную функцию, выполняющую ту же функцию. Тогда выбросьте это.

Добавлена ​​ссылка: Для чего используются символы подчеркивания в Scala?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...