Array+JChat.swift 927 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. //
  2. // Array+JChat.swift
  3. // JChat
  4. //
  5. // Created by 邓永豪 on 2017/10/11.
  6. // Copyright © 2017年 HXHG. All rights reserved.
  7. //
  8. import UIKit
  9. // MARK: - JCMessageType
  10. extension Array where Element: JCMessageType {
  11. func index(_ message: JMSGMessage) -> Int? {
  12. return self.index(where: { (m) -> Bool in
  13. m.msgId == message.msgId
  14. })
  15. }
  16. func index(_ message: JCMessageType) -> Int? {
  17. return self.index(where: { (m) -> Bool in
  18. m.msgId == message.msgId
  19. })
  20. }
  21. }
  22. // MARK: - String
  23. extension Array where Element == String {
  24. func sortedKeys() -> [Element] {
  25. var array = self.sorted(by: { (str1, str2) -> Bool in
  26. return str1 < str2
  27. })
  28. if let first = array.first {
  29. if first == "#" {
  30. array.removeFirst()
  31. array.append(first)
  32. }
  33. }
  34. return array
  35. }
  36. }