こんにちは、私は Scala とプログラミング全般に不慣れです。私は coursera で Scala コースを受講しました。割り当ての 1 つは、セットをパラメーターとして取り、2 つのセットの結合/交差/差分である別のセットを返す関数を作成することでした。交差点の解は次のとおりです。
def intersect(s: Set, t: Set): Set = elem => s(elem) && t(elem)
要素がわかりません。Scalaはそれがセットの要素であることをどのように認識し、シェルで試行するとエラーが返されるのはなぜですか:パラメータータイプがありません.
ユニオンとディファレンスの解決策 (同じ):
def union(s: Set, t: Set): Set = elem => s(elem) || t(elem)
def diff(s: Set, t: Set): Set = elem => s(elem) && !t(elem)
Scala Setから:
ミュータブル セットのジェネリック トレイト。
セットは、重複する要素を含まないコレクションです。
実装上の注意: このトレイトは、その表現とは無関係に Set の操作のほとんどを提供します。通常、セットの具体的な実装によって継承されます。
具体的なセットを実装するには、次のメソッドの実装を提供する必要があります。
def contains(key: A): Boolean
def iterator: Iterator[A]
def +(elem: A): This
def -(elem: A): This