gpt4 book ai didi

ios - 对包含 NSRange 值的数组进行排序

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:58:14 27 4
gpt4 key购买 nike

有一个包含一些 NSRange 值的数组:

@[[NSVale valueWithRange:{5,3}],[NSVale valueWithRange:{2,3}],[NSVale valueWithRange:{7,3}],[NSVale valueWithRange:{1,3} ],....]

每个 range 都有不同的 location,我希望数组按 range.location 倒序排序,有什么好的解决方案吗?

最佳答案

sortedArrayUsingComparator:是您任务的最佳选择。

您的案例代码是:

NSArray *array = @[[NSValue valueWithRange:NSMakeRange(5,3)],
[NSValue valueWithRange:NSMakeRange(2,3)],
[NSValue valueWithRange:NSMakeRange(7,3)],
[NSValue valueWithRange:NSMakeRange(1,3)]];

array = [array sortedArrayUsingComparator:^NSComparisonResult(NSValue *value1, NSValue *value2) {
NSComparisonResult result = NSOrderedSame;
if (value1.rangeValue.location > value2.rangeValue.location) {
result = NSOrderedAscending;
} else if (value1.rangeValue.location < value2.rangeValue.location) {
result = NSOrderedDescending;
}
return result;
}];

关于ios - 对包含 NSRange 值的数组进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23297416/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com