- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
赋值与集合 - Values and Collections
赋值与集合 - Values and Collections
赋值与集合 - Values and Collections
尽管 Objective-C 是⼀种⾯向对象的编程语⾔,它也是C语⾔的加强版,这意味着你可
以在 Objective-C 中使⽤ 准 C 中任意的纯量类型 (⾮对象的),例如 int ,float ,
char 。在 Cocoa 和 Cocoa Touch 应⽤中,你还可以使⽤⼀些额外的类型,例如
NSInteger ,NSUInteger 和 CGFloat ,在不同的系统结构中,他们的定义⽅式也不同。
纯量类型⽤于当你不需要⽤⼀个对象来表⽰值的时候。字符型经常作为 NSString 的实
例⽽使⽤,数值被存储在纯量类型的局部变量或属性中。
你可以在 Objective-C 中定义与 C 语⾔类似的数组,但是在 Cocoa 和 Cocoa Touch 应
⽤中,集合被⽤于实例化像 NSArray 或 NSDictionary 这样的类。这些类只能存放对
象,这意味着在添加对象到集合之前,你就要⽤ NSValue NSNumber 或 NSString 这
样的类为对象赋好值。
在前⾯的章节中,我们多次使⽤了 NSString 类、它的初始化、⽅法函数库,@string
字符为创建 NSString 的实例提供了简单的语法。在本章中,我们会通过⽅法调⽤和赋
值语句来⽰范如何使⽤ NSValue 和 NSNumber 类。
你可以使⽤C中的基本数据类型
在 Objective-C 中,C 的每⼀个 scalar 变量类型都是可以使⽤的:
int someInteger = 42;
float someFloatingPointNumber = 3.1415;
double someDoublePrecisionFloatingPointNumber = 6. 2214199e23;
还有 C 的操作符也都可⽤:
int someInteger = 42;
someInteger++; // someInteger == 43
int anotherInteger = 64;
anotherInteger--; // anotherInteger == 63
anotherInteger *= 2; // anotherInteger == 126
如果你要为 Objective-C 属性使⽤纯量类型 ,请这样做:
@interface XYZCalculator : NSObject
@property double currentValue;
@end
你也可以对属性使⽤ C 操作符,⽤点语法进⾏赋值操作,就像这样:
@implementation XYZCalculator
- (void)increment {
self.currentValue++;
}
- (void)decrement {
self.currentValue--;
}
- (void)multiplyBy :(double)factor {
self.currentValue *= factor;
}
@end
点语法是⼀种纯粹⽤于存取器 (accessor )调⽤⽅法的语法,所以这个例⼦中的每⼀
条操作都是先使⽤ get accessor ⽅法获取实例变量值,运⾏程序后,再使⽤ set accessor
⽅法存储实例变量值作为结果。
Objective-C中其他的基本类型
BOOL 类型在 Objective-C 中⽤来表⽰布尔值:yes 和 no 。正如你想的那样,yes 在逻
辑上等于 true 和 1,no 等于 false 和 0 ;
在 Cocoa 和 Cocoa Touch 中,许多⽅法的参数也可以使⽤特殊的数据类型,例如
NSInteger 和 CGFloat 。
例如, NSTableViewDataSource 和 UITableViewDataSource 协议 (在之前章节提到
的)都有令数据按⾏显⽰的⽅法:
@protocol NSTableViewDataSource NSObject
- (NSInteger)numberOfRowsInTableView :(NSTableView *)
您可能关注的文档
- 试论公安机关警力编制的科学测算与合理配置.pdf
- 试论斯宾诺莎的幸福观.pdf
- 试论老子道的涵义及其辩证法思想.pdf
- 试论初中化学教学中辩证思维和抽象思维能力的培养.pdf
- 试论苏东坡的睿达人生.pdf
- 试论艺术创作中灵感的本质张晓群.pdf
- 试论高职高专学生数学思想方法的培养.pdf
- 试谈库恩的不可通约性论点.pdf
- 试评袁行霈中国文学史唐诗部分编写的开拓之功.pdf
- 试验3- 酵母活体染色观察及死亡率的测定.docx
- DB44_T 2607.4-2025 滨海蓝碳碳汇能力调查与核算技术指南 第4部分:盐沼.pdf
- DB43_T 3178-2024 烟叶农场建设管理要求.pdf
- DB37_T 4838-2025 含氢分布式综合能源系统运行优化指南.pdf
- DB37_T 4834-2025 高速公路集中养护工作指南.pdf
- DB44_T 2611-2025 城市排水管网有毒有害气体监测与风险分级管理技术标准.pdf
- DB44_T 2612-2025 竞赛类科普活动策划与实施服务规范.pdf
- DB43_T 2947-2024 烟草种子质量控制规程.pdf
- DB37_T 4836-2025 煤矿风量实时监测技术要求.pdf
- 叉车防撞系统,全球前22强生产商排名及市场份额(by QYResearch).docx
- 超滤膜,全球前18强生产商排名及市场份额(by QYResearch).docx
最近下载
- 文职技能岗工程机械维修试题.doc VIP
- 2024年江西·农商银行员工招聘真题.docx VIP
- 仪器名称:长春迪瑞 H-300 尿液分析仪型号: H-300.pdf VIP
- 2024年江西农商银行员工招聘真题.docx VIP
- 2023年广东工业大学软件工程专业《操作系统》科目期末试卷A(有答案).docx VIP
- 2024年江西·农商银行员工招聘笔试真题.docx VIP
- 人卫九版心血管PPT:第二章 心力衰竭.ppt
- 历年江西农商银行员工招聘笔试真题2024 .docx VIP
- 2024年江西•农商银行招聘真题.docx VIP
- 【人教版】四年级上册数学课件《平行与垂直》(共20张PPT).pptx
文档评论(0)