構造体の配列があり、可能であればsort()を使用して2つの変数のいずれかでソートできるようにしたいと思います。
struct{
var deadline = 0
var priority = 0
}
Swiftプログラミング言語のドキュメントでsort()を見ましたが、単純な配列しか表示されていません。sort()を使用できますか、それとも独自に作成する必要がありますか?
以下のソート関数はまったく同じですが、それらがどれほど短く表現力があるかだけが異なります。
完全な宣言:
myArr.sort { (lhs: EntryStruct, rhs: EntryStruct) -> Bool in
// you can have additional code here
return lhs.deadline < rhs.deadline
}
短縮された閉鎖宣言:
myArr.sort { (lhs:EntryStruct, rhs:EntryStruct) in
return lhs.deadline < rhs.deadline
}
// ... or even:
myArr.sort { (lhs, rhs) in return lhs.deadline < rhs.deadline }
コンパクトクロージャー宣言:
myArr.sort { $0.deadline < $1.deadline }
完全な宣言:
let newArr = myArr.sorted { (lhs: EntryStruct, rhs: EntryStruct) -> Bool in
// you can have additional code here
return lhs.deadline < rhs.deadline
}
短縮された閉鎖宣言:
let newArr = myArr.sorted { (lhs:EntryStruct, rhs:EntryStruct) in
return lhs.deadline < rhs.deadline
}
// ... or even:
let newArr = myArr.sorted { (lhs, rhs) in return lhs.deadline < rhs.deadline }
コンパクトクロージャー宣言:
let newArr = myArr.sorted { $0.deadline < $1.deadline }
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加