リストのエントリをnumに近づける方法でリストをソートしようとしています。`_`のパラメータタイプがありません
私が使用sortWith
を試してみることにしましたが、次のスニペット:
list.sortWith(math.abs(_ - num) < math.abs(_ - num))
は、Scalaでは_
のための不足しているパラメータの型で失敗しました。 リストのタイプはList[Int]
です。
他のスレッドに続いて、私は(と、なぜ次のコードは、あいまいなタイプではない)、_
は何とかあいまいなタイプですが、私はなぜわからないことを知っている:
scala> val sortedDudes = dudes.sortWith(_.name < _.name)
sortedDudes: Array[Person] = Array(Al, Paul, Tyler)
(Source)
コードを自己完結型にします。 'list'と' num'とは何ですか? – Jubobs
listはList [Int]であり、numは任意の整数です。 – dcheng
'math.abs(_ - num)'は 'math.abs(x => x-num)'の略語であり、常に意味がありません。意図されました。 –