• Collection Operators


    Collection Operators

      Collection operators are specialized key paths that are passed as the parameter to the valueForKeyPath: method. The operator is specified by a string preceded by an at sign (@). The key path on the left side of the collection operator, if present, determines the array or set, relative to the receiver, that is used in the operation. The key path on the right side of the operator specifies the property of the collection that the operator uses. Figure 1 illustrates the operator key path format.

      

      All the collection operators, with the exception of @count, require a key path to the right of the collection operator.

      Note: It is not currently possible to define your own collection operators.

    Simple Collection Operators

    1 NSNumber *transactionAverage = [transactions valueForKeyPath:@"@avg.amount"];
    2 NSNumber *numberOfTransactions = [transactions valueForKeyPath:@"@count"];
    3 NSDate *latestDate = [transactions valueForKeyPath:@"@max.date"];
    4 NSDate *earliestDate = [transactions valueForKeyPath:@"@min.date"];
    5 NSNumber *amountSum = [transactions valueForKeyPath:@"@sum.amount"];

    Object Operators

    1 NSArray *payees = [transactions valueForKeyPath:@"@distinctUnionOfObjects.payee"];
    2 NSArray *payees = [transactions valueForKeyPath:@"@unionOfObjects.payee"];
    3  // Important: These operators raise an exception if any of the leaf objects is nil.

    Array and Set Operatorsw

    1 NSArray *payees = [arrayOfTransactionsArrays valueForKeyPath:@"@distinctUnionOfArrays.payee"];
    2 NSArray *payees = [arrayOfTransactionsArrays valueForKeyPath:@"@unionOfArrays.payee"];
    3 @distinctUnionOfSets
    4 Important: These operators raise an exception if any of the leaf objects is nil.

      

  • 相关阅读:
    Microsoft .NET Framework v4.0 正确安装方法
    彻底解决C#实现DataTable导出EXCEL表格
    利用log4net记录操作日志
    [转]驱动程序开发—编译正传(5)
    [转]驱动程序开发-概述(1)
    论富客户端程序的webservice实现
    在Vista中编程控制防火墙设定(C#)
    [转]驱动程序开发—编译前传(4)
    C#系统较时
    [转]驱动程序开发—工具篇(2)
  • 原文地址:https://www.cnblogs.com/tekkaman/p/3587721.html
Copyright © 2020-2023  润新知