我可以使用选择器(就地)按子字符串对 NSString 的 NSMutable 数组进行排序吗?
我有一个由 NSString
组成的 NSMutableArray
。当我需要对其进行排序时,我使用 [array sortUsingSelector:@selector(caseInsensitiveCompare:)]
效果非常好。
但有时我需要按 NSString 的子字符串对数组进行排序。在这种情况下,子字符串被定义为跟随某个标记的 NSString
的一部分。由于标记在每个字符串中的位置可以不同,因此事情变得更加复杂。
显然,我可以将 NSString
分成 2 个对象并对它们进行排序,但这需要进行重大更改。
有没有一种方法可以使用类似于我上面描述的选择器进行排序?
我想如果没有,那么我可能会通过创建数组的排序副本(而不是使用选择器就地执行)进行排序,然后释放原始数组。
I have a NSMutableArray
consisting out of NSString
s. When I need to sort it, I use [array sortUsingSelector:@selector(caseInsensitiveCompare:)]
which works perfect.
But sometimes I need to sort the array by substrings of NSString
s. The substring is defined in this case as part of NSString
following some marker. The thing is complicated further by the fact that marker can be positioned differently in every string.
Obviously I can break NSString
into 2 objects and do sorting on them but it will require significant changes.
Is there a way to do the sorting using selector similar to what I have described above?
I think if not, then I might sort by creating a sorted copy of an array (instead of using selector to do it in place), then releasing the original.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以使用 NSMutableArray 的 sortWithOptions:usingComparator:
You can perform any arbitrarily complex sorting inline with NSMutableArray's sortWithOptions:usingComparator: