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");
它將返回給定鍵路徑處陣列元素的中位數。中位數是該值,其中一半的元素高於該值,一半的元素低於該值。因此,需要對陣列進行排序,這可能會非常昂貴,具體取決於陣列的大小。