OC中语法糖,最新语法总结

OC中语法糖,最新语法总结

大家好,又见面了,我是全栈君。

<span style="font-size:24px;">    1.方法与顺序无关  
      
      
    2.枚举绑定数据类型  
    enum {  
        ObjectiveC,  
        Java,  
        Ruby,  
        Python,  
        Erlang  
    };  
    typedef NSUInteger Language;  
      
      
    3. 属性不用写@synthesize  
      
      
    4.语法简化  
    4.1 NSNumber  
    NSNumber *value;  
    value = @12345;  
    value = @123.45f;  
    value = @123.45;  
    value = @YES;  
      
      
    4.2 NSArray  
    NSArray *array;  
    array = @[];               //空数组  
    array = @[ a ];          //一个对象的数组  
    array = @[ a, b, c ]; //多个对象的数组  
      
      
    4.3 NSDictionary  
    NSDictionary *dict;  
    dict = @{};     //空字典  
    dict = @{ k1 : o1 };     //包括一个键值对的字典  
    dict = @{ k1 : o1, k2 : o2, k3 : o3 }; //包括多个键值对的字典  
      
      
    注:对可变的容器,能够用:  
    NSMutableArray *mutablePlanets = [@[  
       @"Mercury", @"Venus", @"Earth",  
       @"Mars", @"Jupiter", @"Saturn",  
       @"Uranus", @"Neptune"  
     ] mutableCopy];  
      
      
      
      
    5.对象下标  
    能够通过下标方式存取数组和字典的数据。相似C语言结构  
      
      
    5.1 NSArray  
    NSArray *array = @[ a, b, c ];  
    id obj = array[i];     //通过下标方式获取数组对象,替换原有写法:array objectAtIndex:i];  
    array[i] = newObj;     //也能够直接为数组对象赋值。替换原有写法:[array replaceObjectAtIndex:i withObject:newObj];  
      
      
    5.2 NSDictionary  
    NSDictionary *dict = @{ k1 : o1, k2 : o2, k3 : o3 };  
    id obj = dict[k2];     //获取o2对象,替换原有写法:[dic objectForKey:k2];  
    dic[k2] = newObj;  //又一次为键为k2的对象赋值。替换原有写法:[dic setObject:newObj forKey:k2]  
      
      
    6.小结  
    @# nsnumbers  
    @{} dictionaries  
    @“” strings  
    @[] arrays  
    @() expressions  </span>

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/115763.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • eclipse Maven配置[通俗易懂]

    eclipse Maven配置[通俗易懂]简述:现需要在Eclipse中配置Maven插件,同时安装maven应用,配置Maven环境变量,建立Maven管理的工程,并用Maven导入Gson包,编写简易Json输出程序步骤:1.首先到EclipseMarketplace中下载MavenIntegrationforEclipseWTP,如下,之后查看是否成功下载,Win

  • 电流转电压模块4-20mA转0-3.3/5V/10V/15V转换变送器电路原理解析

    电流转电压模块4-20mA转0-3.3/5V/10V/15V转换变送器电路原理解析工业传感器常使用电流大小来传输数据,那么作为传感器数据的接收方,比如单片机,有内部AD的单片机可以检测电压的大小,那么首先必须将电流信号转换为电压信号,然后进行电压幅值变换使其适合MCU处理的电压范围。下面我们从设计的电流转电压的模块电路原理图来逐步解析。首先我们看电流检测放大部分,就是U1B部分,电流从R1的上端流入,下端流出。不难看出这是一个差分放大电路,也就是一个减…

  • inputstream.read() 方法 乱码_InputStreamReader

    inputstream.read() 方法 乱码_InputStreamReadernewInputStreamReader(request.getInputStream(),“UTF-8”)引起了乱码,改为newInputStreamReader(newBufferedInputStream(request.getInputStream()))后解决了乱码问题针对这个乱码问题,在网上搜索后有以下3种情况[1]数据库表里面字符集设置错误[2]由于未加编码过滤器导致SpringMVC接收参数时造成的乱码[3]代码中涉及byte数组转换String时出现了问题一、解

  • android 安装p12证书,怎么使用P12证书的Android「建议收藏」

    android 安装p12证书,怎么使用P12证书的Android「建议收藏」当点击Wi-FiSettings,Advanced界面的“安装证书”;或者在Settings的Security界面下的CredentialStorage界面点击“安装证书”。com.android.certinstaller包中的CertInstallerMain类会收到Settings发送的Credentials.INSTALL_AS_USER_ACTIONintent。然后,CertIn…

  • 发现C++Builder 2010一组类BUG

    发现C++Builder 2010一组类BUG

  • spawn ssh「建议收藏」

    spawn ssh「建议收藏」#!/usr/bin/expectsetip[lindex$argv0];setusername[lindex$argv1];setpassword[lindex$argv2];setkey_init”*yes/no*”setkey_password”[Pp]assword:”settimeout30setprompt”(#|%|\\$)

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号