У меня есть очень простой пример набора s1 {1, 2}, и я хочу применить к нему предикат p> 1. Теперь я реализовал эту функцию, и это дает мне правильные результаты.Scala Predicates и функции фильтра?
def filter(s: Set, p: Int => Boolean): Set = {(i: Int) => s(i) && p(i)}
Где определение множества
type Set = Int => Boolean
Но есть более элегантный способ сделать это в Scala?
Я думаю, у вас есть веская причина, чтобы определить 'Set', как это, а не использовать стандартную библиотеку коллекции Scala? – ghik
Да, это часть курса Курсеры Мартина Одерского. – user1343318
@ user1343318 Вы можете оставить '{}' и аннотацию типа после 'i', поэтому тело будет выглядеть так:' i => s (i) && p (i) '. Кроме того, это выглядит отлично ... :) –