// // KMNTools.swift // PDF Reader Pro // // Created by 丁林圭 on 2024/10/24. // import Cocoa class KMNTools: NSObject { @objc class func parseIndexSet(indexSet: IndexSet) -> String { return self.parseIndexs(indexs: indexSet.sorted()) } @objc class func parseIndexs(indexs: [Int]) -> String { if (indexs.isEmpty) { return "" } if (indexs.count == 1) { return "\(indexs.first!+1)" } var sortArray: [Int] = [] for i in indexs { sortArray.append(i) } /// 排序 (升序) sortArray.sort(){$0 < $1} var a: Int = 0 var b: Int = 0 var result: String? for i in sortArray { if (result == nil) { a = i b = i result = "" continue } if (i == b+1) { b = i if (i == sortArray.last) { result?.append(String(format: "%d-%d", a+1,b+1)) } } else { if (a == b) { result?.append(String(format: "%d,", a+1)) } else { result?.append(String(format: "%d-%d,", a+1,b+1)) } a = i b = i if (i == sortArray.last) { result?.append(String(format: "%d", a+1)) } } } return result ?? "" } }