gpt4 book ai didi

ios - 将 SortInPlace 与一些可选值一起使用(无)

转载 作者:行者123 更新时间:2023-11-28 16:09:14 24 4
gpt4 key购买 nike

你好

我有一个字典,其中包含我需要根据时间值 (NSDate) 进行排序的结构。

大多数结构体中不会包含该时间值,因此它们的时间值(NSDate?)将为 nil(可选)。

我尝试的函数在尝试 nil 值时会崩溃。我怎样才能让这个函数对值进行排序而不是在它尝试比较 nil 时崩溃?

AllBooks.SharedInstanse.browseBooks.sortInPlace(
{(
$0.0.shedueledTime!.compare(($0.1.shedueledTime)!) == NSComparisonResult.OrderedAscending

)
})

谢谢

最佳答案

这取决于你想用 nil 值做什么?

这会将它们全部放在开头:

let today = Date()
let a: [Date?] = [nil, today.addingTimeInterval(24*60*60), nil, today]


let b = a.sorted(by: { ($0 ?? Date(timeIntervalSince1970: 0)) < ($1 ?? Date(timeIntervalSince1970: 0))})

把它放到 Playground 上,你就可以玩了。要消除 nil 值,请在排序前使用平面图。

关于ios - 将 SortInPlace 与一些可选值一起使用(无),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39796705/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com