字面量(笑笑语法)

字面量(笑笑语法)

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

1.NSString *greeting = [NSString stringWithUTF8String:“hello”];

   NSString *greeting = @”hello”;

 

2.NSArray *array = [NSArray arrayWithObjects:a,b,c, nil];

   NSArray *array = @[a,b,c];


3.[array objectAtIndex:1];

   array[1];


4.di = [NSDictionary dictionaryWithObjects:@[1,2,3] forKeys:@[k1,k2,k3], nil];

  di = @{k1:1,k2:2,k3:3}      @[1,2,3]是一个数组,@[k1,k2,k3]也是一个数组


5.[NSDictionary dictionaryWithObjectsAndKeys:v1,k1,v2,k2 nil];

   @{k1:v1,k2:v2};


6.[dictionary valueForKey:k];

   dictionary[k];

        


语法简化  [ NSNumber ]

1.NSNumber *value;  

value = @12345;  

value = @123.45f;  

value = @123.45;  

value = @YES; 

样例:

int a = 10; 

NSNumber *a1 = [NSNumber numberWithChar:a];

NSNumber *a1 =@a;


2.[NSArray ] 


NSArray *array;  

array = @[];               //空数组  

array = @[ a ];          //一个对象的数组  

array = @[ a, b, c ]; //多个对象的数组  


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];  


NSArray  

NSArray *array = @[ a, b, c ];  

id obj = array[i];     //通过下标方式获取数组对象,替换原有写法:[array objectAtIndex:i];  

array[i] = newObj;     //也能够直接为数组对象赋值。替换原有写法:[array replaceObjectAtIndex:i withObject:newObj];  

  

  

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]  





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 }; //包括多个键值对的字典 
   

  1.     
  2.     
  3. 4.3 NSDictionary    
  4. NSDictionary *dict;    
  5. dict = @{};     //空字典    
  6. dict = @{ k1 : o1 };     //包括一个键值对的字典    
  7. dict = @{ k1 : o1, k2 : o2, k3 : o3 }; //包括多个键值对的字典    
  8.     
  9.     
  10. 注:对可变的容器,能够用:    
  11. NSMutableArray *mutablePlanets = [@[    
  12.    @”Mercury”@”Venus”@”Earth”,    
  13.    @”Mars”@”Jupiter”@”Saturn”,    
  14.    @”Uranus”@”Neptune”    
  15.  ] mutableCopy];    
  16.     
  17.     
  18.     
  19.     
  20. 5.对象下标    
  21. 能够通过下标方式存取数组和字典的数据。类似C语言结构    
  22.     
  23.     
  24. 5.1 NSArray    
  25. NSArray *array = @[ a, b, c ];    
  26. id obj = array[i];     //通过下标方式获取数组对象。替换原有写法:array objectAtIndex:i];    
  27. array[i] = newObj;     //也能够直接为数组对象赋值。替换原有写法:[array replaceObjectAtIndex:i withObject:newObj];    
  28.     
  29.     
  30. 5.2 NSDictionary    
  31. NSDictionary *dict = @{ k1 : o1, k2 : o2, k3 : o3 };    
  32. id obj = dict[k2];     //获取o2对象,替换原有写法:[dic objectForKey:k2];    
  33. dic[k2] = newObj;  //又一次为键为k2的对象赋值。替换原有写法:[dic setObject:newObj forKey:k2]    
  34.     
  35.     
  36. 6.小结    
  37. @# nsnumbers    
  38. @{} dictionaries    
  39. @“” strings    
  40. @[] arrays    
  41. @() expressions    

@# nsnumbers  

@{} dictionaries  

@“” strings  

@[] arrays  

@() expressions 

  1. 4.3 NSDictionary    
  2. NSDictionary *dict;    
  3. dict = @{};     //空字典    
  4. dict = @{ k1 : o1 };     //包括一个键值对的字典    
  5. dict = @{ k1 : o1, k2 : o2, k3 : o3 }; //包括多个键值对的字典 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116262.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Office2016简体中文专业版32/64

    Office2016简体中文专业版32/64仅供参考链接:https://pan.baidu.com/s/1-rUA6atszrSxkm1aMLO7AQ提取码:1jne

    2022年7月19日
    16
  • Java详解:淘宝秒杀脚本java

    Java详解:淘宝秒杀脚本java造成雪崩的真实场景1.4.1服务提供者不可用硬件故障:如网络故障、硬盘损坏等。程序的bug:如算法需要占用大量CPU的计算时间导致CPU使用率过高。缓存击穿:比如应用刚重启,短时间内缓存是失效的,导致大量请求直接访问到了数据库,数据库不堪重负,服务不可用。秒杀和大促:服务短时间承载不了那么多请求量。1.4.2重试加大流量用户连续重试:比如用户看到界面上没有响应,所以又操作了一遍,结果又增加了一倍请求量。程序重试机制:比如代码中有多次重试的逻辑,一次失

    2022年6月1日
    31
  • C3P0连接池详解及配置「建议收藏」

    C3P0连接池详解及配置「建议收藏」C3P0连接池详解及配置数据库连接是一个耗费大量资源且相当慢的操作,所以为了提高性能和连接速度,诞生了连接池这样的概念。在多用户并发操作过程中,连接池尤为重要。它是将那些已连接的数据库连接存放在一个容器里(连接池),这样以后别人要连接数据库的时候,将不会重新建立数据库连接(这样蜗牛的慢动作谁都受不了的),他会直接从连接池里取出可用的连接,用户使用完毕后,连接又重新回到连接池

    2022年5月9日
    41
  • 计算机网络vlan的作用,计算机网络之九:VLAN

    计算机网络vlan的作用,计算机网络之九:VLAN一:什么是VLAN广播在网络中起着非常重要的作用,如发现新设备,调整网络路径,IP地址租赁等,许多网络协议都要用到广播。然而,随着网络内计算机数量的增多,广播包的数量也会急剧增加,当广播包的数量占到通讯总量的30%时,网络的传输效率将会明显下降。所以当局域网内的计算机达到一定数量后,通常采用划分VLAN(虚拟局域网)的方式将网络分隔开来。将一个大的广播域划分为若干个小的广播域,以减小广播可能造成的…

    2022年8月10日
    3
  • pycharm的虚拟环境

    pycharm的虚拟环境选中file==》closeproject退出项目进入下方的情况现在我们在桌面新创建一个文件test.py可以看到可以执行test.py右键选中test.py,选择pycharm的方式打开test.py,会发现无法调试,出现NoPythonInterpreter的错误,为什么命令行可以执行test.py,pycharm执行test.py文件就不可以了呢?这是为什么呢?我们新建一个项目来查看原因第一个location为你项目的路径,可以点击右边的文件夹进行选择。第二个locatio.

    2022年8月25日
    6
  • 决策树算法(C4.5)

    决策树算法(C4.5)

    2021年11月19日
    35

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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