Я не уверен насчет ошибки, но вы можете добиться того, что вы хотите, следующим образом:
m.foreach(p => println(">>> key=" + p._1 + ", value=" + p._2))
То есть foreach
принимает функцию, которая принимает пару и возвращает Unit
,не функция, которая принимает два аргумента: здесь, p
имеет тип (String, Int)
.
Другой способ написать это:
m.foreach { case (key, value) => println(">>> key=" + key + ", value=" + value) }
В этом случае блок { case ... }
является частичной функцией.