KVC的应用理解

1、利用KVC可以修改只读/私有/公共等属性值(破坏封装性)

例:只读属性tabBar

KVC的应用理解_第1张图片

2.setValue: forKeyPath:  使用点语法赋值

KVC的应用理解_第2张图片

3.valueForKeyPath与valueForKey;

同1和2的赋值一样,(1)valueForKeyPath:可以使用点语法多层次获取值(2)valueForKey:只能通过属性名称获取值。

4.案例使用


KVC的应用理解_第3张图片

1).获取所有书名称并放到一个数组中

NSArray names = [p valueForKeyPath:@"books.name"];

2).获取所有书的价格总和

double sum = [[p valueForKeyPath:@"[email protected]"] doubleValue];

其余运算法百度替换即可@avg(平均),@sum(求和)

你可能感兴趣的:(KVC的应用理解)