Luc*_*nzo 1 sorting xcode swift swift2
我已经阅读过类似的问题/答案,但没有一个能解决我的问题。
我有一个这样的对象
class Chat {
unreadMessages: Int = 0
messages: Int = 0
}
Run Code Online (Sandbox Code Playgroud)
然后我有一组 Chat 对象,我需要按多个条件对其进行排序,首先通过与 grater 未读消息聊天,然后与 grater total 消息聊天。
埃斯。
Obj TotMes Unread
Chat A 10 3
Chat B 1 0
Chat C 4 0
Chat D 9 9
Run Code Online (Sandbox Code Playgroud)
所需的输出:
Chat D 9 9
Chat A 10 3
Chat C 4 0
Chat B 1 0
Run Code Online (Sandbox Code Playgroud)
我尝试使用这种 alhoritm,但似乎不起作用:
let sorted = chats.sort({ (c1, c2) -> Bool in
if c1.unreadMessages > c2.unreadMessages {
return true
}
if c1.messages > c2.messages {
return true
}
return false
})
Run Code Online (Sandbox Code Playgroud)
有人可以解释一下这有什么问题吗?
您还没有达到c1.unreadMessages < c2.unreadMessages应涵盖所有要求的条件:
let sorted = chats.sort({ (c1, c2) -> Bool in
if c1.unreadMessages > c2.unreadMessages {
return true
} else if c1.unreadMessages < c2.unreadMessages {
return false
} else if c1.messages > c2.messages {
return true
}
return false
})
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3515 次 |
| 最近记录: |