繁体   English   中英

排序/过滤NSArray / NSMutableArray

[英]Sorting / Filtering an NSArray / NSMutableArray

对于我的兴趣而言,最重要的是。

如果您有这样定义的类...

MyClass
-------
NSString *name

然后将它们中的很多放入数组(或可变数组)中。 然后您可以使用这样的谓词...

[NSPredicate predicateWithFormat:@"name = %@", someValue];

过滤数组,使其仅包含名称为给定值的对象。

或者像这样对描述符进行排序...

[NSSortDescriptor sortDescriptorWithKey:@"name" ascending:YES];

按名称字段升序对数组进行排序。

我的问题是,如果您有一个字符串数组(或NSNumbers),可以使用类似的“格式”谓词吗?

假设您拥有阵列...

@[@"Cat", @"Bat", @"Dog", @"Cow"];

您能否使用“ predicateWithFormat”来过滤“ sortDescriptorWithKey”的此数组以对其进行排序?

我知道您可以使用块,但是想知道是否可行?

当然,您可以使用predicateWithFormat:过滤字符串数组或其他内容。 至于排序,您将使用sortedArrayUsingSelector :,并使用所需的任何选择器(compare:,caseInsensitiveCompare:等)。 在简单数组中没有键,因此无法使用sortDescriptorWithKey。

字符串没有任何键可在谓词上使用或进行排序。 您可以在apple docs中找到其他所有可能的方式来对数组进行排序。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM