obj-c部分对象快捷赋值和取值
NSNumber *number = @1234;
旧的方式:
NSArray *physicsValues = [NSArrayarrayWithObjects: [NSNumbernumberWithDouble:6.02214129e23], [NSNumbernumberWithDouble:1.3806503e-23], [NSNumbernumberWithDouble:6.626068e-34], [NSNumbernumberWithDouble:1.097373e-7], nil];
我们可以用以下方式来代替:
NSArray *numberArray = [NSArray arrayWithObjects:
@6.02129e23
@1.380,
@6.62,
@1.097373e-7,
nil];
不过上面的代码可以更加简单:
NSArray *numberArray = @[@6.02129e23,
@1.380,
@6.62,
@1.097373e-7]; NSArray *stringArray = @[ @"good",
@"see"
@"xCode",
@"what"];
来看个老的方法:
nameDict = [NSDictionary dictionaryWithObjectsAndKeys: physic, @"Physic", newStrings, @"string", number, @"Numbers",
nil];
新的方法:
nameDict = @{
@"Physic" : physic,
@"string" : newStrings,
@"Numbers" : number
};
对于数组,我们想取个值,一般是用[array objectAtindex:0];
不过现在有更方便快捷的办法了,就是直接使用下标array[0],效果和前面那句是一样的。
替换数据一样可以用下标
//旧的: [valuesArray replaceObjectAtIndex:controller.indexInSection withObject:controller.value]; [valuesDictionary setObject:valuesArray forKey:controller.sectionName]; //新的: valuesArray[controller.indexInSection] = controller.value; valuesDictionary[controller.sectionName] = valuesArray;
使用以上那些特性,我们不需要关心ios的版本,这些是编译器的事,所以我们可以尽管放心去做。
obj-c部分对象快捷赋值和取值的更多相关文章
- js实现hashtable的赋值、取值、遍历
哈希表(Hashtable)这个概率应该是#c里面的概念,用来赋值.取值.遍历.排序操作提高效率.想起这个东西其实使我们以前经常遇到这样的面试题,一个很大的数组可能有100000个,如何快速知道它里面 ...
- Jquery实现数据双向绑定(赋值和取值),类似AngularJS
<!DOCTYPE html> <html> <head> <meta name="viewport" content="wid ...
- 实用ExtJS教程100例-011:ExtJS Form 使用JSON数据赋值和取值
上一节中我们演示了ExtJS Form的异步加载和提交数据,本节中我们将演示如何使用JSON数据为ExtJS Form中的字段赋值和取值. 系列ExtJS教程持续更新中,点击查看>>最新E ...
- 通过编写串口助手工具学习MFC过程——(十)UpdateData()用法和编辑框的赋值、取值
通过编写串口助手工具学习MFC过程 因为以前也做过几次MFC的编程,每次都是项目完成时,MFC基本操作清楚了,但是过好长时间不再接触MFC的项目,再次做MFC的项目时,又要从头开始熟悉.这次通过做一个 ...
- 关于ligerform中select与text的赋值与取值
如有下ligerform表单: var formData = [ { display: "区域", name: "QYYJ", newline: true, l ...
- Java反射 - 简单的给Bean赋值和取值
由于项目的实际需要,所以利用java反射原理写了一个简单给bean赋值和取值通用的类,在此记录下方便自己日后用到,也为需要的兄弟提供个参考例子. 工具类BeanRefUtil: package c ...
- jquery input 赋值和取值
记录一下: 在写一个input赋值,二话不说就直接利用了$('#xx').val()来进行取值和赋值,取值ok,赋值后利用alert显示正确,但是在html上并没有正确的显示出来,后来改为使用如下代码 ...
- datetimebox赋值或取值
datetimebox赋值或取值 $('#j_dateStart').datebox('setValue', ""); //赋予空值 $("#j_dateStart&qu ...
- C# - 匿名对象属性的赋值与取值
在new出匿名对象的函数内可以直接调用该匿名对象的属性取值. 可是在其它函数就无法调用匿名对象的属性或方法. 这时,我们可以通过c#的反射机制取值: 文章出处:https://www.cnblogs. ...
随机推荐
- poj 3041 最小点覆盖=最大匹配
#include<stdio.h> #include<string.h> #define N 510 int map[N][N],n,mark[N],link[N]; in ...
- Yarn的工作流程
http://study.163.com/course/courseLearn.htm?courseId=1002887002#/learn/video?lessonId=1003346099& ...
- RubyMine生成reader/writer方法
RubyMine生成reader/writer方法 在非类的ruby文件中,Alt+Insert会出现新建文件的选项: 在ruby文件的类中,Alt+Insert会出现get/set方法生成提示和重构 ...
- ural 1005 Stone Pile
这是道01背包题 ,尽管背包不会 ,可是还是看出来了,递推公式写啊写没写出来,后来一同学说是dfs.这我就開始了A了, 题意是给你n个重量是Wn的石头 让你放到两个包里面.看他们两个差值最小, ...
- csu 1030: 素数槽
素数槽 Description 处于相邻的两个素数p和p + n之间的n - 1个连续的合数所组成的序列我们将其称为长度为n的素数槽.比如,‹24, 25, 26, 27, 28›是处于素数23 ...
- Setting up a EDK II build environment on Windows and Linux:搭建Windows和Linux开发环境[2.2]
Setting up a EDK II build environment on Windows and Linux:搭建Windows和Linux开发环境[2.2] 2015-07 北京海淀区 ...
- C/C++中字符串String及字符操作方法
本文总结C/C++中字符串操作方法,还在学习中,不定期更新. .. 字符串的输入方法 1.单个单词能够直接用std::cin,由于:std::cin读取并忽略开头全部的空白字符(如空格,换行符,制表符 ...
- Binding Enum to ComboBox
1.添加MarkupExtension public class EnumToSourceExtension : MarkupExtension { private Type _type; publi ...
- python基于selenium+cv2+numpy实现登录某大型电商系统
首先贴上我的安装包 一.selenium安装 I.打开pycharm,点击Settings,找到Project Interpreter,点击右边的下拉菜单下的show All...选项 II.点击sh ...
- hdoj-- Walking Ant
Walking Ant Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other) Total S ...