Foundation框架3.ppt
《Foundation框架3.ppt》由会员分享,可在线阅读,更多相关《Foundation框架3.ppt(31页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、核心内容 Foundation框架 数字对象常用处理方法 字符串对象常用处理方法 数组对象常用处理方法 字典和集合对象常用处理方法约定速成的命名规则 类名首字母大写 变量名和方法名首字母小写 使用驼峰标志1 认识Foundation框架 框架是有许多类、方法、函数以及文档按照一定的规则组织起来的集合,以便于程序员更加方便、迅速的开发程序。cocoa程序编写主要用到2个框架Foundation和ApplicationKit(UIKit)。其中Foundation框架主要定义了一些基础类,供程序员来使用,而Application Kit主要是一些用户界面设计的类,用于Mac开发使用此库。Found
2、ation框架中的所有类都继承自NSObject这个对象。 作为通用的面向对象的函数库,Foundation提供了字符串,数值的管理,容器及其枚举,以及一些其他的与图像用户界面没有直接关系的功能。其中用于类和常数的“NS”前缀来自于Cocoa的来源,NextSTEP。它可以在Mac OX X和iOS中使用。2、数字对象的常用处理方法在之前的学习中,我们已经学习了基本数据类型。但这些都是基本数据类型,它们不是对象,因此,不能向它们发送消息。然而有时也需要将他们当做对象来处理。比如,我们需要把基本类型放入集合中(在cocoa中集合只能存放对象,无法存放基本数据类型),那么这时我们需要将基本类型转换
3、为数字对象。OC中提供了数字对象“NSNumber”可以将基本数据类型“包装”成对象,这样我们就可以将数据类型来处理了。 数字对象的初始化/ 类方法创建数字对象int number = 10;NSNumber *intNumber = NSNumber numberWithInt:number;BOOL isBool = YES;NSNumber *boolNumber = NSNumber numberWithBool:isBool;数字对象创建与转换 数字对象的转化/ 实例方法创建数字对象float pi = 3.14;NSNumber *piNumber = NSNumber alloc
4、 initWithFloat:pi;char character = a;NSNumber *cNumber = NSNumber alloc initWithChar:character;/ 还原成基本数据类型int month = intNumber intValue;BOOL isOpen = boolNumber boolValue;float length = piNumber floatValue;char firstName = cNumber charValue;(看代码(看代码FoundationDemo1)3、字符串的基本概念和常用处理方法在Foundation框架中,提供
5、了NSString类,用于处理字符串对象。在C语言中字符串在一对引号中表示。OC是C语言的一种延展,换句话说,OC语言是建立在C语言的基础上的(C的基础上添加了面向对象的内容,smalltalk语言)。因此,为了区别两者的字符串,OC语言的字符串必须以开头,引号当中则是字符串的内容,如“abc”。此外,NSString对象,一旦被创建,就不可以更改。如若需要一个可以更改的字符串对象,需要创建NSMutableString实例。字符串对象的创建字符串的创建 创建一个字符串 创建一个空的字符串 快速创建一个字符串NSString *string = 这是一个字符串常量;NSString *stri
6、ng1 = NSString alloc init;NSString *string2 = NSString string;NSString *string = NSString alloc initWithString:快速创建字符串;NSString *string = NSString stringWithString:快速创建一个字符串;比较字符串对象int number = 2;NSString *string = NSString alloc initWithFormat:%d, numnber; 快速创建一个格式化字符串float number = 2.4;NSString *s
7、tring = NSString stringWithFormat:浮点数%f, number;比较字符串 测试字符串内容是否相同NSString *string1 = NSString alloc initWithFormat:test;NSString *string2 = NSString alloc initWithFormat:test;if (string1 isEqualToString:string2) NSLog(测试连个字符串是否相等);比较字符串对象测试字符串是否为同一个对象比较字符串的大小求字符串的长度NSString *string1 = NSString alloc
8、 initWithFormat:test;NSString *string2 = NSString alloc initWithFormat:test;if (string1 = string2) NSLog(测试两个字符串是否为同一个对象);NSString *string1 = NSString alloc initWithFormat:a;NSString *string2 = NSString alloc initWithFormat:b;NSLog(string1 caseInsensitiveCompare:string2 : %ld, string1 caseInsensitiv
9、eCompare:string2);字符串对象的转换NSString *string1 = NSString alloc initWithFormat:string length;NSUInteger *length = string1 length; 字符串的转换 改变字符串大小写NSString *hello = hello WORLD;NSLog(“%”, hello uppercaseString); /全部大写NSLog(%, hello lowercaseString); /全部小写NSLog(%, hello capitalizedString); / 首字母大写,其他字母小写
10、将字符串转换成基本数据类型NSString *string = 2.467;NSLog(%d, string boolValue); /转换成BOOL类型NSLog(%f, string floatValue); /转换成浮点型NSLog(%f, string doubleValue); /转换成双精度型NSLog(%d, string intValue); /转换成整型截取字符串对象NSString *string = One Two Three Four;NSArray *array = string componentsSeparatedByString: ; 将字符串转换为数组字符串的
11、截取与拼接 截取字符串NSString *string = NSString alloc initWithFormat:abcdef;/ 从字符串的开头一直截取到指定的位置,但不包括该位置的字符NSString *string1 = string substringToIndex:2;/ 以指定位置开始(包括指定位置的字符),并包括之后的全部字符NSString *string2 = string substringFromIndex:2;拼接字符串对象 截取字符串NSRange rang;rang.location = 2;rang.length = 2;NSString *string3
12、= string substringWithRange:rang;NSString *str1 = 1, *str2 = 2;NSString *string = NSString alloc initWithFormat:这时拼接:% and %, str1, str2;NSString *string1 = str1 stringByAppendingFormat:%, str2;NSString *string2 = str1 stringByAppendingString:str2;查询字符串查询字符串对象NSString *link = asdastarget=_blankddasd
13、;NSRange range = link rangeOfString:target=_blank;if (range.location != NSNotFound) NSLog(string 找到了);可变字符串对象l 可变字符串-NSMutableString,它继承自NSString 插入字符串 删除字符串 替换字符串NSMutableString *str = NSMutableString stringWithString:字符串;str insertString:可变 atIndex:0; NSMutableString *str = NSMutableString stringW
14、ithString:字符串;str deleteCharactersInRange:NSMakeRange(1, 2);NSMutableString *str = NSMutableString stringWithString:字符串;str replaceCharactersInRange:NSMakeRange(0,2) withString:羊肉;4、集合-数组的概念和常用方法l 数组的基本概念 Foundation中的数组(NSArray,NSMutableArray)是一组有序的对象集合,通过索引下标取到数组中的各个元素。与字符串相同,数组也有可变和不可变数组之分。此外,数组中不
15、可以存放基本数据类型,只能存放类的实例(对象)。如若需要将基本数据类型、结构体放入数组中,需要通过NSNumber、NSValue进行数据的“封装”;l 不可变数组-NSArray 数组的初始化NSArray *firstArray = NSArray arrayWithObject:one;/ 多个元素初始化时,注意nil作为数组的结束NSArray *secondArray = NSArray arrayWithObjects:one, two, nil;NSArray *thirdArray = NSArray arrayWithArray:secondArray;NSArray *Fo
16、urArray = NSArray arrayWithContentsOfFile:path;数组的常用方法 常用方法NSArray *array = NSArray arrayWithObjects:a, b, c, nil;/ 获取数组中的元素个数NSInteger count = array count;/根据下标访问对象NSString *firstObj = array objectAtIndex:0;/在原来的数组上追加对象,返回一个新的数组对象NSArray *addArray = array arrayByAddingObject:ddd;/用指定的字符串将数组中的元素连接起来
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Foundation 框架
限制150内