您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Swift:按字母顺序对对象数组进行排序

Swift:按字母顺序对对象数组进行排序

在传递给的闭包中sort,比较要排序的属性。像这样:

movieArr.sorted { $0.name < $1.name }

或以下要绕过案例的案例:

movieArr.sorted { $0.name.lowercased() < $1.name.lowercased() }

通常,只有类型以大写字母开头;我建议使用nameand date,而不是Nameand 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.sorted { $0.name < $1.name }
sortedMovies

sortedMovies 将按顺序 [movieA, movieB, movieC]

Swift5更新

channelsArray = channelsArray.sorted { (channel1, channel2) -> Bool in
            let channelName1 = channel1.name
            let channelName2 = channel2.name
            return (channelName1.localizedCaseInsensitiveCompare(channelName2) == .orderedAscending)
Swift 2022/1/1 18:22:47 有545人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶