斯威夫特:对象的排序按字母顺序排列 [英] Swift: Sort array of objects alphabetically
本文介绍了斯威夫特:对象的排序按字母顺序排列的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有这样的:
class Movies {
Name:String
Date:Int
}
和[电影]数组。我如何数组名称的字母顺序进行排序?我试过:
and an array of [Movies]. How do I sort the array alphabetically by name? I've tried:
movieArr = movieArr.sorted {$ 0℃; $ 1}
和
movieArr =排序(movieArr)
但是,这并不工作,因为我没有访问电影的name属性。
but that doesn't work because I'm not accessing the name attribute of Movies.
推荐答案
在你传递给排序
,比较要排序的属性关闭。像这样的:
In the closure you pass to sort
, compare the properties you want to sort by. Like this:
movieArr.sort { $0.Name < $1.Name }
旁注:通常只有类型以大写字母;我推荐使用名称
和日期
,而不是名称
和日期
。的
Sidenote: Typically only types start with an uppercase letter; I'd recommend using name
and date
, not Name
and Date
.
例如,在一个游乐场:
class Movie {
let name: String
var date: Int?
init(_ name: String) {
self.name = name
}
}
var movieA = Movie("A")
var movieB = Movie("B")
var movieC = Movie("C")
let movies = [movieB, movieC, movieA]
let sortedMovies = movies.sort { $0.name < $1.name }
sortedMovies
sortedMovies
将在订单 [影片A,所以MovieB,movieC]
这篇关于斯威夫特:对象的排序按字母顺序排列的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文