
CGfloat sum = 0;for (UIVIEw *v in self.subvIEws) sum += v.frame.size.height;
要么
CGfloat sum = [[self.subvIEws valueForKeyPath:@"@sum.frame.size.height"] floatValue];解决方法 真的,很多优雅(或聪明)的语言归结于它避免循环的程度.为了甚至快速枚举表达是一个拖累.无论你如何糖衣,循环将是一个代码的块,做一个简单易懂的自然语言描述.
“让我得到这个阵容中所有员工的平均工资”,
double totalSalary = 0.0;for (Employee *employee in employees) { totalSalary += [employee.salary doubleValue];}double averageSalary = totalSalary / [employees count]; 与…
幸运的是,键值编码为我们提供了一个更简洁 – 几乎类似Ruby的方法:
[employees valueForKeyPath:@"@avg.salary"];
KVC集合运算符允许使用valueForKeyPath中的关键路径符号对集合执行 *** 作.
任何时候,在关键路径中看到@,它表示一个特定的聚合函数,其结果可以返回或链接,就像任何其他键路径一样.
快速枚举比KVC快.
希望它可以帮助你.
总结以上是内存溢出为你收集整理的iphone – KVC vs快速枚举全部内容,希望文章能够帮你解决iphone – KVC vs快速枚举所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)