Iプレイスクラスの次のオブジェクトの配列を持っている:スウィフトオブジェクト配列のプロパティ値が最小のオブジェクトを見つけるにはどうすればよいですか?
class Place: NSObject {
var distance:Double = Double()
init(_ distance: Double) {
self.distance = distance
}
}
let places = [Place(1.5), Place(8.4), Place(4.5)]
私は最短距離のある場所を取得する必要があります。 私は同様の質問に対する答えthisあたりとして
let leastDistancePlace = places.min { $0.distance > $1.distance }
を使用してみましたが、それは次のようなエラーを与えました。
Contextual closure type '(Place) -> _' expects 1 argument, but 2 were used in closure body
PS:@robmayoffの答えを1として
、私が遊び場で、以下を試してみましたが、私はエラーを取得しておいてください。
value of Type [Place] no member min
私の迅速なバージョンがある:アップルスウィフトバージョン2.2(swiftlang-703.0.18.8打ち鳴らす-703.0.31)
あなたはそれがないではない 'map' –
」、' max'か(参照の答えのように) 'min'を使用する必要があります仕事 "は十分な情報ではありません。どのように失敗するのですか?コンパイル時にエラーが出ますか?実行時エラーが出ますか?コンパイルして実行しますが、間違った答えを出しますか?これらの詳細を含めるように質問を編集してください。 –
ちなみに、あなたの試みでは、あなたは 'places.map'と言っていますが、リンクした答えは' places.max'です。おそらく、あなたは 'places.min'と言っていたでしょうか? –