• KVC的使用


    KVC的使用如下:

    (1)利用给对象的属性赋值,调用如下两个方法

    - (void)setValue:(nullable id)value forKey:(NSString *)key;
    
    - (void)setValue:(nullable id)value forKeyPath:(NSString *)keyPath;

    其中,setValue:forKeyPath:  这个方法中,可以根据属性的路径赋值。

    意思就是说,RiJiModel中有一个“MYCRiJiDiaryModel”类型的对象 diary,而diary类中有个title的属性,

    那么,可以给rijiModel的diary对象的title这样赋值:

    [rijiModel setValue:@"this is a title name"   forKeyPath:@"diary.title"];

    这个forKeyPath 会先找到diary这个对象,再找到diary这个对象的title进行赋值;

    (2)修改私有的成员变量

    oc的系统中有很多私有的成员变量,用点赋值法是不能修改这个私有成员变量的值的。

    但是用setValue:forKeyPath: 是可以修改的。

    (3)取值

    常规的就不说话了,说个比较有意思的:

    数组的使用中,有几个比较有意思的:

    第一个:取数组的个数;

    第二个:取数组的对象中,年龄最大的值;

    第三个:取数组的对象中,年龄最小的值;

    第四个:取数组的对象中,年龄的平均值。

  • 相关阅读:
    省队集训Ⅱ-Day5
    省队集训Ⅱ-Day4
    省队集训Ⅱ-Day3
    省队集训Ⅱ-Day2
    省队集训Ⅱ-Day1
    并查集 Pro
    树上带修: 莫队Ⅳ
    树上骗分: 莫队Ⅲ
    带修骗分: 莫队Ⅱ
    骗分带师: 莫队Ⅰ
  • 原文地址:https://www.cnblogs.com/lyz0925/p/11440463.html
Copyright © 2020-2023  润新知