val m = Map(1 -> "a", 2 -> "b", 4 -> "c", 10 -> "d")
val s = Set(1,4)
m.filterKeys { s.contains(_) == false }
// Map(2 -> b, 10 -> d)
Но, если это огромная карта и огромный набор, то я бы посоветовал сначала отсортировать их и выполнить взаимную итерацию по ним, отбирая нужные вам фрагменты по ходу работы.Повторные вызовы на contains
могут работать не так, как вам хотелось бы, особенно если вы используете List
вместо Set
.