我正试图根据长度和位置对NSRanges阵列进行排序:
var allranges = [NSRange?]()
allranges.append(NSRange(location: 3, length: 5))
allranges.append(NSRange(location: 9, length: 2))
allranges.append(NSRange(location: 9, length: 1))
allranges.append(NSRange(location: 24, length: 5))
allranges.append(NSRange(location: 16, length: 9))
allranges.append(NSRange(location: 11, length: 6))
allranges.sortInPlace{ $0!.location < $1!.location && $0!.length < $1!.length}
print(allranges)这就是我所印的:
任择(3,5),可选(9,2),可选(9,1),可选(24,5),可选(11,6),可选(16,9)
但我想这样做:
任择(3,5),可选(9,1),可选(9,2),可选(24,5),可选(11,6),可选(16,9)
请帮帮忙!
发布于 2016-05-20 18:17:13
您可能希望按location进行排序,如果location相同,则按length排序,例如:
var allranges = [NSRange]()
allranges.append(NSRange(location: 3, length: 5))
allranges.append(NSRange(location: 9, length: 2))
allranges.append(NSRange(location: 9, length: 1))
allranges.append(NSRange(location: 24, length: 5))
allranges.append(NSRange(location: 16, length: 9))
allranges.append(NSRange(location: 11, length: 6))
allranges.sortInPlace { $0.location == $1.location ? $0.length < $1.length : $0.location < $1.location }https://stackoverflow.com/questions/37353203
复制相似问题