zoukankan      html  css  js  c++  java
  • Objective-C中的类型

    Objective-C中的数据类型

     
    导航:
    基本数据类型
    对象类型
    id类型
     
    1.基本数据类型
         Objective-C中的基本类型与C语言的基本类型一样,主要有:int,long,float,double,char,void,bool等.
         值得注意的是,在Foundation框架中,系统为某些数据起了别名,如: NSInteger 是 long ,CGFloat是double,以及BOOL等
         由于Objective-C是C的超集,因此,OC中也可以使用C语言的构造类型,如:数组,结构体等;
         *对于基本数据类型,不需要指针,也不需要手动回收,方法执行结束系统就会自动回收.
         
    2.对象类型
    常见的对象类型的数据类型有:
    -NSNumber
    -NSString和NSMutableString
    -NSArray和NSMutableArray
    -NSSet和NSMutableSet
    -NSDictionary和NSMutableDictionary
     
    3.id类型:
         在Objective-C中,id类型是一个比较独特的数据类型,它可以转换为任何数据类型,也就是说,id类型的变量可以存放任何数据类型的对象.在内部处理上,这种类型被定义为指向对象的指针,实际上是一个指向这种对象的实例变量的指针.id是一个指向任何一个继承了NSObject类的的对象.
         由于id是一个指针,所以在使用id的时候不需要在前面加星号*
         
    4.其他特殊的数据类型(nil、Nil、SEL等等)
         nil  与C语言的NULL相同,在Objc.h中定义. nil表示一个Objective-C对象,这个对象的指针指向空.(没有东西就是空)
         Nil  首字母大写的Nil与nil稍微有点不同,Nil定义的是一个指向空的类(注意,是类Class,而不是对象)
         SEL 第一次接触的时候老师说遇到它就把它替换为@selector ,SEL 是”selector”的一个类型,表示的是一个方法的名字.比如:
    在调用对数组排序的方法:sortedArrayUsingSelector:(SEL)时,就会出现SEL,此时我们就可以在SEL里面填入 @selector(compare:)selector后面跟的是一种你需要用的方法.
      还有很多不是很常见的数据类型,笔者暂不一一列举了.
    自己选的路,跪着也要走下去......
  • 相关阅读:
    使用redis,zookeeper实现分布式锁
    基于线程池的多线程售票demo(原创)
    springboot全局异常处理
    IDEA2017.3.4破解方式及lombok图文配置详解
    LeetCode 120——三角形最小路径和
    LeetCode 1——两数之和
    LeetCode 445——两数相加 II
    在本地电脑使用远程服务器的图形界面——包括 MATLAB、PyCharm 等各种软件
    LeetCode 141——环形链表
    LeetCode 142——环形链表 II
  • 原文地址:https://www.cnblogs.com/zmc815/p/5325767.html
Copyright © 2011-2022 走看看