Foundation框架3.ppt_第1页
Foundation框架3.ppt_第2页
Foundation框架3.ppt_第3页
Foundation框架3.ppt_第4页
Foundation框架3.ppt_第5页
免费预览已结束,剩余25页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Foundation框架 核心内容 Foundation框架数字对象常用处理方法字符串对象常用处理方法数组对象常用处理方法字典和集合对象常用处理方法 约定速成的命名规则 类名首字母大写变量名和方法名首字母小写使用驼峰标志 1认识Foundation框架 框架是有许多类 方法 函数以及文档按照一定的规则组织起来的集合 以便于程序员更加方便 迅速的开发程序 cocoa程序编写主要用到2个框架Foundation和ApplicationKit UIKit 其中Foundation框架主要定义了一些基础类 供程序员来使用 而ApplicationKit主要是一些用户界面设计的类 用于Mac开发使用此库 Foundation框架中的所有类都继承自NSObject这个对象 作为通用的面向对象的函数库 Foundation提供了字符串 数值的管理 容器及其枚举 以及一些其他的与图像用户界面没有直接关系的功能 其中用于类和常数的 NS 前缀来自于Cocoa的来源 NextSTEP 它可以在MacOXX和iOS中使用 2 数字对象的常用处理方法 在之前的学习中 我们已经学习了基本数据类型 但这些都是基本数据类型 它们不是对象 因此 不能向它们发送消息 然而有时也需要将他们当做对象来处理 比如 我们需要把基本类型放入集合中 在cocoa中集合只能存放对象 无法存放基本数据类型 那么这时我们需要将基本类型转换为数字对象 OC中提供了数字对象 NSNumber 可以将基本数据类型 包装 成对象 这样我们就可以将数据类型来处理了 数字对象的初始化 类方法创建数字对象intnumber 10 NSNumber intNumber NSNumbernumberWithInt number BOOLisBool YES NSNumber boolNumber NSNumbernumberWithBool isBool 数字对象创建与转换 数字对象的转化 实例方法创建数字对象floatpi 3 14 NSNumber piNumber NSNumberalloc initWithFloat pi charcharacter a NSNumber cNumber NSNumberalloc initWithChar character 还原成基本数据类型intmonth intNumberintValue BOOLisOpen boolNumberboolValue floatlength piNumberfloatValue charfirstName cNumbercharValue 看代码FoundationDemo1 3 字符串的基本概念和常用处理方法 在Foundation框架中 提供了NSString类 用于处理字符串对象 在C语言中字符串在一对引号中表示 OC是C语言的一种延展 换句话说 OC语言是建立在C语言的基础上的 C的基础上添加了面向对象的内容 smalltalk语言 因此 为了区别两者的字符串 OC语言的字符串必须以 开头 引号当中则是字符串的内容 如 abc 此外 NSString对象 一旦被创建 就不可以更改 如若需要一个可以更改的字符串对象 需要创建NSMutableString实例 字符串对象的创建 字符串的创建创建一个字符串创建一个空的字符串快速创建一个字符串 NSString string 这是一个字符串常量 NSString string1 NSStringalloc init NSString string2 NSStringstring NSString string NSStringalloc initWithString 快速创建字符串 NSString string NSStringstringWithString 快速创建一个字符串 比较字符串对象 intnumber 2 NSString string NSStringalloc initWithFormat d numnber 快速创建一个格式化字符串 floatnumber 2 4 NSString string NSStringstringWithFormat 浮点数 f number 比较字符串测试字符串内容是否相同 NSString string1 NSStringalloc initWithFormat test NSString string2 NSStringalloc initWithFormat test if string1isEqualToString string2 NSLog 测试连个字符串是否相等 比较字符串对象 测试字符串是否为同一个对象比较字符串的大小求字符串的长度 NSString string1 NSStringalloc initWithFormat test NSString string2 NSStringalloc initWithFormat test if string1 string2 NSLog 测试两个字符串是否为同一个对象 NSString string1 NSStringalloc initWithFormat a NSString string2 NSStringalloc initWithFormat b NSLog string1caseInsensitiveCompare string2 ld string1caseInsensitiveCompare string2 字符串对象的转换 NSString string1 NSStringalloc initWithFormat stringlength NSUInteger length string1length 字符串的转换 改变字符串大小写 NSString hello helloWORLD NSLog hellouppercaseString 全部大写NSLog hellolowercaseString 全部小写NSLog hellocapitalizedString 首字母大写 其他字母小写 将字符串转换成基本数据类型 NSString string 2 467 NSLog d stringboolValue 转换成BOOL类型NSLog f stringfloatValue 转换成浮点型NSLog f stringdoubleValue 转换成双精度型NSLog d stringintValue 转换成整型 截取字符串对象 NSString string OneTwoThreeFour NSArray array stringcomponentsSeparatedByString 将字符串转换为数组 字符串的截取与拼接 截取字符串 NSString string NSStringalloc initWithFormat abcdef 从字符串的开头一直截取到指定的位置 但不包括该位置的字符NSString string1 stringsubstringToIndex 2 以指定位置开始 包括指定位置的字符 并包括之后的全部字符NSString string2 stringsubstringFromIndex 2 拼接字符串对象 截取字符串 NSRangerang rang location 2 rang length 2 NSString string3 stringsubstringWithRange rang NSString str1 1 str2 2 NSString string NSStringalloc initWithFormat 这时拼接 and str1 str2 NSString string1 str1stringByAppendingFormat str2 NSString string2 str1stringByAppendingString str2 查询字符串 查询字符串对象 NSString link asdastarget blankddasd NSRangerange linkrangeOfString target blank if range location NSNotFound NSLog string找到了 可变字符串对象 可变字符串 NSMutableString 它继承自NSString 插入字符串删除字符串替换字符串 NSMutableString str NSMutableStringstringWithString 字符串 strinsertString 可变 atIndex 0 NSMutableString str NSMutableStringstringWithString 字符串 strdeleteCharactersInRange NSMakeRange 1 2 NSMutableString str NSMutableStringstringWithString 字符串 strreplaceCharactersInRange NSMakeRange 0 2 withString 羊肉 4 集合 数组的概念和常用方法 数组的基本概念Foundation中的数组 NSArray NSMutableArray 是一组有序的对象集合 通过索引下标取到数组中的各个元素 与字符串相同 数组也有可变和不可变数组之分 此外 数组中不可以存放基本数据类型 只能存放类的实例 对象 如若需要将基本数据类型 结构体放入数组中 需要通过NSNumber NSValue进行数据的 封装 不可变数组 NSArray 数组的初始化 NSArray firstArray NSArrayarrayWithObject one 多个元素初始化时 注意nil作为数组的结束NSArray secondArray NSArrayarrayWithObjects one two nil NSArray thirdArray NSArrayarrayWithArray secondArray NSArray FourArray NSArrayarrayWithContentsOfFile path 数组的常用方法 常用方法 NSArray array NSArrayarrayWithObjects a b c nil 获取数组中的元素个数NSIntegercount arraycount 根据下标访问对象NSString firstObj arrayobjectAtIndex 0 在原来的数组上追加对象 返回一个新的数组对象NSArray addArray arrayarrayByAddingObject ddd 用指定的字符串将数组中的元素连接起来NSString arrayStr arraycomponentsJoinedByString 数组中是否包含某对象BOOLisContain arraycontainsObject bbb 查询指定对象在数组中的元素 如果没此元素 返回NSNotFoundNSIntegerindex arrayindexOfObject ccc 获取数组中最后一个元素NSString lastString arraylastObject 可变数组的常用方法 可变数组 NSMutableArray 它继承自NSArray 常用方法 初始化 设定元素个数为5 但可以更改NSMutableArray mutableArray NSMutableArrayarrayWithCapacity 5 向数组中添加一个元素 mutableArrayaddObject aaa 向数组中指定下标插入元素 mutableArrayinsertObject ccc atIndex 0 移除指定元素 mutableArrayremoveObject aaa 移除指定下标的元素 mutableArrayremoveObjectAtIndex 0 向数组中添加数组 mutableArrayaddObjectsFromArray array 遍历数组 遍历数组 遍历数组常规方法 NSArray array NSArrayarrayWithObjects a b z nil intlength arraycount for inti 0 i length i NSString element arrayobjectAtIndex i NSLog element 遍历的性能较低 替换指定的下标元素 mutableArrayreplaceObjectAtIndex 0withObject replace 移除所有对象 mutableArrayremoveAllObjects 快速枚举 遍历数组 for NSString stringinarray NSLog found string 遍历的性能高 for idstringinarray NSLog found string 当不确定数组的元素的类型时 可以选择用id 4 集合 字典的概念和常用方法 遍历数组Foundation中的字典 NSDictionary NSMutableDictionary 是由键 值对组成的数据集合 正如 我们在字典里查找单词的定义一样 通过key 键 查找对象value 值 key通常是字符串对象 也可以是其他任意类型对象 在一个字典对象中 key的值是唯一的 此外 字典对象的键和值不可以为空 nil 如果需要在一个字典对象中表示一个空值 可以使用NSNull对象 不可变字典 NSDictionary 字典的初始化 字典的初始化方法 常用方法 NSNumber numObj NSNumbernumberWithInt 100 以一个元素初始化NSDictionary dic NSDictionarydictionaryWithObject numObjforKey key 初始化两个元素NSDictionary dic NSDictionarydictionaryWithObjectsAndKeys numObj valueKey numObj2 valueKey2 nil 初始化新字典 新字典包含otherDicNSDictionary dic NSDictionarydictionaryWithDictionary otherDic 以文件内容初始化字典NSDictionary dic NSDictionarydictionaryWithContentsOfFile path 字典的常用方法 可变字典 NSMutableDictionary继承自NSDictionary 常用方法 获取字典数量NSIntegercount diccount 通过key获取对应的value对象NSObject valueObj dicobjectForKey key 将字典的key转成一个枚举对象 用于遍历NSEnumerator enumerator dickeyEnumerator 获取所有键的集合NSArray keys dicallKeys 获取所有值的集合NSArray values dicallValues 可变字典的常用方法 初始化一个空的可变字典 注意以下代码前后无关联性 NSMutableDictionary dic2 NSMutableDictionarydictionaryWithObjectsAndKeys v1 key1 v2 key2 nil NSDictionary dic3 NSDictionarydictionaryWithObject v3 forKey key3 向字典2对象中添加整个字典对象3 dic2addEntriesFromDictionary dic3 向字典2对象中追加一个新的key3和value3 dic2setValue value3 forKey key3 初始化一个空的可变字典NSMutableDictionary dic1 NSMutableDictionarydictionary 将空字典1对象的内容设置为字典2对象相同 dic1setDictionary dic2 dic1removeObjectForKey key1 将字典中key1对应的值删除NSArray array NSArrayarrayWithOjbects key1 nil dic2removeObjectsForKeys array 根据制定的数组 key 移除字典2的内容 dic1removeAllObjects 移除字典所有对象 遍历字典 遍历字典 快速枚举 一般的枚举 通过枚举类型枚举 for idkeyindic idobj dicobjectForKey key NSLog obj NSArray keys dicallKeys intlength keyscount for inti 0 i length i idkey keysobjectAtIndex i idobj dicobjectForKey key NSLog obj 遍历字典 NSEnumerator enumerator dickeyEnumerator idkey enumeratornextObject while key idobj dicobjectForKey key NSLog obj key enumeratornextObject 4 集合 集合概念和常用方法 集合的基本概念在Foundation框架中 提供了NSSet类 它是一组单值对象的集合 且NSSet实例中元素是无序 同一个对象只能保存一个 并且它也分为可变和不可变对象 可变集合对象 NSMutableSet 不可变集合 NSSet NSSet的初始化 类似与数组的构建 直接创建一个集合NSSet set1 NSSetalloc initWithObjects one two nil 通过数组的构建集合NSArray array NSArrayarrayWithObjects 1 2 3 nil NSSet set2 NSSetalloc initWithArray array 通过已有集合构建集合NSSet set3 NSSetalloc initWithSet set2 集合的常用方法 NSSet的常用方法 BOOL 集合3中对象的个数intcount set3count 以数组的形式返回集合3中所有的对象NSArray allObjects set3allObjects 返回集合3中的任意一个对象idobject set3anyObject 集合4中是否包含内容为2的字符串对象 如果包含返回YES 否则返回NOBOOLisContain set4containsObject 2 集合4中与集合2中是否存在有相同元素的对象 如果有返回YES 否则为NOBOOLisIntersect set4intersectsSet set2 集合4与集合5的元素是否完全匹配 如果匹配返回YES 否则为NOBOOLisEqual set4isEqualToSet set5 集合4是否是集合5的子集合 如果是返回YES 否则为NOBOOLisSubset set4isSubsetOf

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论