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>
OC中语法糖,最新语法总结的更多相关文章
- JVM(二):Java中的语法糖
JVM(二):Java中的语法糖 上文讲到在语义分析中会对Java中的语法糖进行解糖操作,因此本文就主要讲述一下Java中有哪些语法糖,每个语法糖在解糖过后的原始代码,以及这些语法糖背后的逻辑. 语法 ...
- iOS语法糖 简单却不那么简单
转载作者 香蕉大大 (Github) 开发过程中我特别喜欢用语法糖,原因很简单,懒得看到一堆长长的代码,但是语法糖我今天无意中看到更有意思的玩法.这里暂时吧把今天新学到的知识点整理一下希望大家喜欢,如 ...
- Java语法糖1:可变长度参数以及foreach循环原理
语法糖 接下来几篇文章要开启一个Java语法糖系列,所以首先讲讲什么是语法糖.语法糖是一种几乎每种语言或多或少都提供过的一些方便程序员开发代码的语法,它只是编译器实现的一些小把戏罢了,编译期间以特定的 ...
- C# 基础小知识之yield 关键字 语法糖
原文地址:http://www.cnblogs.com/santian/p/4389675.html 对于yield关键字我们首先看一下msdn的解释: 如果你在语句中使用 yield 关键字,则意味 ...
- OC语法3——点语法,self关键字
点语法: 为了给程序员提供便捷,OC中也引入了点语法.不过它和Java中点语法的意义是完全不同的. 在Java中无论调用任何方法,还是访问public类型的成员变量都是用点语法(.号). 而在OC ...
- Java语法糖设计
语法糖 Java语法糖系列,所以首先讲讲什么是语法糖.语法糖是一种几乎每种语言或多或少都提供过的一些方便程序员开发代码的语法,它只是编译器实现的一些小把戏罢了,编译期间以特定的字节码或者特定的方式对这 ...
- 迭代器Iterator与语法糖for-each
一.为什么需要迭代器 设计模式迭代器 迭代器作用于集合,是用来遍历集合元素的对象.迭代器迭代器不是Java独有的,大部分高级语言都提供了迭代器来遍历集合.实际上,迭代器是一种设计模式: 迭代器模式提供 ...
- 传说中 VUE 的“语法糖”到底是啥?
一.什么是语法糖? 语法糖也译为糖衣语法,是由英国计算机科学家彼得·约翰·兰达(Peter J. Landin)发明的一个术语.指的是计算机语言中添加的一种语法,在不影响功能的情况下,添加某种简单的语 ...
- Python语法糖,提升编程幸福感!!!
转载请注明出处️ 作者:测试蔡坨坨 原文链接:caituotuo.top/a52bc938.html 大家好,我是测试蔡坨坨. 今天,我们来盘点一下Python中的那些语法糖. 什么是语法糖?语法糖不 ...
随机推荐
- How to get multi-touch working(Linux and Andriod)
1.在hid-ids.h中加入vid pid 2.在hid-multitouch..c->mt_devices[] 中加入 { ...
- Python 日期和时间(转)
Python 日期和时间 Python程序能用很多方式处理日期和时间.转换日期格式是一个常见的例行琐事.Python有一个 time 和 calendar 模组可以帮忙. 什么是Tick? 时间间隔是 ...
- C复习手记(Day4)
1.C错误处理 errno.perror() 和sterror() perror() 函数显示您传给它的字符串,后跟一个冒号.一个空格和当前 errno 值的文本表示形式. strerror() 函数 ...
- C#socket通讯两个最经典错误解决方案
1.经典错误之 无法访问已释放的对象. 对象名:“System.Net.Sockets.Socket” (1).问题现场 (2).问题叙述 程序中的某个地方调用到了socket.close ...
- [c#]asp.net开发微信公众平台(7)前6篇的整体框架demo源码
这里给出的demo是具备整体框架的微信公众平台源码, 所谓demo就是拿过去就可以直接演示使用的东西, 当然不会具备非常详细的具体到业务层面.数据层面的东西, 每个人都可以在此基础上自由发挥, 只 ...
- linux下登录出现-bash-3.2#解决办法
1:下载 安装 csh yum install csh 2:再切换即可
- MySQL 分区表 partition线上修改分区字段,后续进一步学习partition (1)
公司线上在用partition,有一个表的分区字段错了,需要重建,结果发现没有办法像修改主键字段或者修改索引字段那样直接一条sql搞定.而是需要建临时表,有down time,所以去仔细看了文档,研究 ...
- SelectedNode与e.node的区别
SelectedNode与e.node的区别 待补.......
- 解决ie6显示透明图的问题
在我们设置png透明图片时,其他浏览器都显示很正常,唯独只有ie6看着不是透明的状态. 第一种办法是:单独设置ie6的样式.例: _background: none; _filter:progid:D ...
- JavaWeb学习笔记--3.JavaBean
JavaBean 是一种JAVA语言写成的可重用组件.为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器.JavaBean 通过提供符合一致性设计模式的公共方法将内部域暴露成员属性 ...