zoukankan      html  css  js  c++  java
  • iOS-KVC

    [person setValue:@"xiaomi" forKeyPath:@"dog.name"];

    [person valueForKey:"age"]

    [person dictionaryWithValuesForKeys:@[@"name",@"age"]]; //模型转字典

    forKey和forKeyPath的区别:

    forkeyPath包含了所有forKey的功能。

    forKeyPath进行内部的点语法,层层访问内部的属性

      key值一定要在属性中找到

    KVC可以修改类的私有成员变量

    [person setValue:@"22" forKeyPath:@"age"];   age 或 _age都可以, 还可以自动类型转换

    不用使用字典时一个一个赋值,而是

    [self setValuesForKeysWithDictionary:dict];

    但开发中不建议使用:

    1. 字典中的key必须在模型的属性中找到,否则报错

    2. 如果模型中有模型,不能把子模型转成对象 

    字典转模型: MJExtension

    取出数组中对象相同的属性

    [allPersons valueForKeyPath:@"name"]

     

  • 相关阅读:
    Oracle数据库学习(四)
    近期整理
    2020/5/29
    2020/5/26
    2020/5/25
    2020/5/22
    2020/5/16
    2020/5/15
    2020/5/14
    2020/5/13
  • 原文地址:https://www.cnblogs.com/yintingting/p/12755978.html
Copyright © 2011-2022 走看看