美文网首页
使用KVC的聚合运算

使用KVC的聚合运算

作者: lancely | 来源:发表于2016-06-03 12:27 被阅读321次

KVC支持的聚合运算

  • sum 求和
  • max 最大值
  • min 最小值
  • avg 平均值
  • count 数量

使用方法

新建一个类Person,里面存放一个属性age

#import <Foundation/Foundation.h>

@interface Person : NSObject

/** 年龄 */
@property (nonatomic, assign) NSUInteger age;

@end

创建一个数组,存放Person对象

NSMutableArray<Person *> *persons = [NSMutableArray array];
for (int i = 1; i <= 5; i++) {
    Person *p = [[Person alloc] init];
    p.age = i;
    [persons addObject:p];
}

使用@sum @min @max @avg @count进行聚合运算

NSInteger sum = [[persons valueForKeyPath:@"@sum.age"] integerValue];
NSInteger min = [[persons valueForKeyPath:@"@min.age"] integerValue];
NSInteger max = [[persons valueForKeyPath:@"@max.age"] integerValue];
float avg = [[persons valueForKeyPath:@"@avg.age"] floatValue];
NSInteger count = [[persons valueForKeyPath:@"@count.age"] integerValue];

NSLog(@"sum=%zd", sum);
NSLog(@"min=%zd", min);
NSLog(@"max=%zd", max);
NSLog(@"avg=%g", avg);
NSLog(@"count=%zd", count);

打印结果

打印结果

数组中直接存放数值的情况

直接使用@运算符.floatValue

NSArray<NSNumber *> *arr = @[@1, @2, @3, @4];
NSNumber *avg = [arr valueForKeyPath:@"@avg.floatValue"];
NSNumber *sum = [arr valueForKeyPath:@"@sum.integerValue"];
NSLog(@"avg=%@", avg);
NSLog(@"sum=%@", sum);

打印结果

打印结果

相关文章

  • 使用KVC的聚合运算

    KVC支持的聚合运算 sum 求和 max 最大值 min 最小值 avg 平均值 count 数量 使用方法 新...

  • 3-8 Numpy中的聚合运算

    1.聚合运算 1)向量上的聚合运算 2)二维矩阵上的聚合运算

  • 非常规聚合问题举例

    聚合运算是指对数据进行计算,返回聚合结果。聚合运算经常伴随着分组运算,除了常见的求和、最大值、最小值、计数等聚合运...

  • KVC---使用集合运算

    来源 https://developer.apple.com/library/content/documentat...

  • 问题:KVC的keyPath中的集合运算符如何使用?

    KVC集合运算符允许在valueForKeyPath:方法中使用集合运算符执行方法。无论什么时候你在key pat...

  • iOS KVC进阶用法

    1. KVC字典操作 2. KVC消息传递 array 3. 聚合操作符 @avg、@count、@max、@...

  • Nosql-neo4j-Cypher 语法(2)

    目录:[TOC] Cypher运算 Operators 运算概要 运算类型概要聚合操作DISTINCT属性运算.获...

  • 3、pandas数据重构

    1、使用concat做数据合并 1.1、横向合并 1.2、纵向合并 2、使用group对数据进行聚合及运算 一图看...

  • KVC集合运算符

    KVC集合运算符允许在valueForKeyPath:方法中使用key path符号在一个集合中执行方法。无论什么...

  • KVC详解

    KVC 目录结构KVC定义KVC取值和设置KVC使用keyPathKVC处理字典KVC作用 参考:iOS KVC和...

网友评论

      本文标题:使用KVC的聚合运算

      本文链接:https://www.haomeiwen.com/subject/lfnkdttx.html