zoukankan      html  css  js  c++  java
  • NSNumber 与NSValue

        NSNumber与NSValue关系与作用
    
    1.由于集合里只能存放对象,不可以存放基本数据类型,所以我们有时候需要讲一些对象比如基本数据类型,结构体等存到NSDictionary NSArray中,我们就需要将这些数据类型或结构体包装成OC对象,以便集合能访问到。常用的用来包装这些类型的有NSNumber NSValue
    
    2.NSNumber只能包装基本数据类型,比如int, float,char,BOOL等
    
    3.NSValue可以包装任意一个对象,包括系统自定义的数据结构,结构体等等
    
    4.NSNumber是NSValue的一个子类
    
        NSNumber
    
    //包装
    int age = 20;
    NSNumber *num = [NSNumber numberWithInt:age];//将基本数据类型int对象age 包装成NSNumber对象
    @(age);//直接包装
    
    //拆封
    [num intValue];
    
        NSValue
    
    将结构体包装成OC对象
    
    CGPoint p = CGPointMake(1,2);
    NSValue *val = [NSValue valueWithPoint:p];//将结构体p包装成NSValue对象
    
    //
    [value pointValue]
  • 相关阅读:
    汽车文化【1196】
    西方经济学
    计算机组成原理【0013】
    C语言程序设计【0039】
    教育学【0405】
    管理学[9080]
    专业英语【0089】
    计算机基础1056
    letcode每日一题-上升下降字符串
    Flowable学习-flowable
  • 原文地址:https://www.cnblogs.com/Free-Thinker/p/9844269.html
Copyright © 2011-2022 走看看