WebObjects/Project WONDER/Frameworks/ERExtensions/ERXArrayUtilities
ERXArrayUtilities 提供了用于操作 NSArrays 的便利方法和工具。许多方法是不言自明的。有关完整列表,请参阅 api (http://webobjects.mdimension.com/wonder/api/er/extensions/foundation/ERXArrayUtilities.html).
WebObjects 提供 @sum,@avg 等数组运算符。ERXArrayUtilities 添加了许多其他运算符
SortOperator:为键sort定义一个 NSArray.Operator。
这允许使用以下键值路径:
myArray.valueForKey("@sort.firstName");
myArray.valueForKey("@sort.lastName,firstName");
在第一种情况下,将返回按名字升序排序的 myArray,在第二种情况下,将返回按姓氏然后按名字排序的 myArray。
注册的其他排序运算符有:@sortAsc,@sortDesc,@sortInsensitiveAsc,@sortInsensitiveDesc
FetchSpecOperator:为键fetchSpec定义一个 NSArray.Operator。
这允许使用以下键值路径:
myArray.valueForKey("@fetchSpec.fetchUsers");
在这种情况下,将返回使用名为“fetchUsers”的 EOFetchSpecification 筛选和排序的 myArray,该规范必须是第一个对象实体中的基于模型的 fetchspec。
FlattenOperator:为键flatten定义一个 NSArray.Operator。
这允许使用以下键值路径:
myArray.valueForKey("@flatten");
在这种情况下,如果 myArray 是 NSArrays(NSArrays 等)的 NSArray,则将返回已扁平化的 myArray。
IsEmptyOperator:为键isEmpty定义一个 NSArray.Operator。
这允许使用以下键值路径:
myArray.valueForKey("@isEmpty");
SubarrayWithRangeOperator:为键subarrayWithRange定义一个 NSArray.Operator。
这允许使用以下键值路径:
myArray.valueForKey("@subarrayWithRange.3-20");
UniqueOperator:为键unique定义一个 NSArray.Operator。
这允许使用以下键值路径:
myArray.valueForKeyPath("@unique.someOtherPath");
在这种情况下,将仅返回 myArray 中唯一的那些对象。
RemoveNullValuesOperator:为键removeNullValues定义一个 NSArray.Operator。
这允许使用以下键值路径:
myArray.valueForKeyPath("@removeNullValues.someOtherPath");
在这种情况下,将返回不包含 NSKeyValueCoding.Null 出现的 myArray。
ObjectAtIndexOperator:为键objectAtIndex定义一个 NSArray.Operator。
这允许使用以下键值路径:
myArray.valueForKey("@objectAtIndex.3.firstName");
AvgNonNullOperator:为键avgNonNull定义一个 NSArray.Operator。
这允许使用以下键值路径:
myArray.valueForKey("@avgNonNull.revenue");
它将对所有值求和并除以非空条目的数量。
ReverseOperator:为键reverse定义一个 NSArray.Operator。
这允许使用以下键值路径:
myArray.valueForKey("@reverse.someMorePath");
它将返回与通常获得的结果相反的结果。
MedianOperator:为键median定义一个 NSArray.Operator。
这允许使用以下键值路径:
myArray.valueForKey("@median.someMorePath");
它将返回给定键路径处数组元素的中位数。中位数是该值,其中一半的元素高于该值,一半的元素低于该值。因此,需要对数组进行排序,这可能会非常昂贵,具体取决于数组的大小。