【发布时间】:2016-09-30 23:50:56
【问题描述】:
我有一个带有 NSNumber 属性的自定义数据对象。如何使用 NSNumber 属性将消息从一个数组排序到另一个数组?
我试过了,但我得到一个错误
Binary operator '<' cannot be applied to two 'NSNumber?' operands
emptyArray = messagesArray.sort{$0.time < $1.time}
升序或降序无关紧要
class Message{
var toMessage: String?
var time: NSNumber?
}
var messagesArray[Message]()
let message1 = Message()
message1.toMessage = "Bonjour"
message1.time = 123
let message2 = Message()
message1.toMessage = "Hola"
message1.time = 456
let message3 = Message()
message1.toMessage = "Hello"
message1.time = 789
messagesArray.append(message1)
messagesArray.append(message2)
messagesArray.append(message3)
//I need to get the elements from messagesArray into emptyArray sorting by NSNumber time property
var emptyArray = [Message]()
【问题讨论】:
-
您没有将其排序到新数组中。只需复制所有数据,然后对其进行排序。
-
@Paulw11 我不确定这意味着什么,但我找到了答案
标签: ios arrays sorting swift2 nsnumber