数字、字符串和集合

数字、字符串和集合

        Foundation框架提供了一些基本对象。这些基本对象包括数字、字符串和集合,集合指的是能够以数组、字典和集的形式使用成组对象的能力。

       使用预编译命令导入Foundation会显著地增加程序的编译时间。然而,通过使用预编译的头文件是经过编译器预先处理过的文件。默认情况下,所有项目都会受益于预编译的头文件。

一、数字对象

1、概念:可根据基本数据类型来创建的对象。

2、创建方式:使用NSNumber类来创建

如:NSNumber *intNumber;

intNumber=[NSNumber numberWithInterger:100];

3NSNumber的创建方法和检索方法

1>、对于每个基本值,类方法都为它分配了一个NSNumber对象,并将其设置为指定的值。这些方法以numberWith开头,之后是类型。此外,可以使用实例方法为以前分配的NSNumber对象设置指定的值。这些都是initWith开头。

2>、检索方式,如:

NSLog(@”%li”,[intNumber integerValue];

3>isEqualToNumber: 方法根据数值比较两个NSNumber对象。

4>compare: 方法

a、可用compare: 方法来测试一个数值型的值是否在数值上小于、等于或大于另一个 值。

b、消息表达式:[intNumber compare:myNumber]

c、结果:当intNumber中的值小于myNumber中的值时,返回值NSOrderedAscending; 如果两个数相等,则返回值NSOrderedSame;如果大于,则返回值NSOrderedDescending

 (更多方法请参见《数字、字符和集合方法归纳》)

4、注意事项

1>、从NSNumber对象获得的值必须和存储在其中的值类型一致。

2>、如果在NSNumber对象中存储了一个值,那么也要用一致的方式进行检索。

3>、不能重新初始化前面创建的NSNumber的值。

二、字符串对象

1、字符串对象

1>、介绍:Foundation框支持一个名为NSString的类,它可以用于处理字对象,NSString是由unichar字符组成。

2>、创建方式字符串:在字符串开关放置一个@字符

如:@”Programming is fun”

3>、创建字符串对象要求:需要添加 #import<Foundation/NSString.h>

4>、定义方式,如:NSString *str=@”Programming is fun”;

2NSLog函数

1>NSLog函数是用于输出的函数。

2>NSLog格式字符%@不仅能显示NSString对象,而且可以显示其它对象。

3>NSLog调用,如:NSLog(@”%@”,str);

4>NSLog格式式字符%@可以显示数组、字典和集合的全部内容。还可以通过重载类继承的方法,显示你自己的对象。

3、可变对象与不可变对象

1>、不可变对象:创建字符串对象时,就创建了一个内容不可更改的对象。

2>Lenght方法: 可用来对字符串中的字符进行计数。

3>isEqualToString: 方法用检测两个字符串是否相等。

4>uppercaseString: 方法将字符串转换成大写字符。

5>lowercaseString: 方法将字符串转换成小写字符。

6>substringFormIndex: 方法返回一个字符串,它从接收者的指定索引的字符开始,直到字符串结尾。

7>substringWithRange: 方法接受一个范围,并返回指定范围的字符。

8>rangeOfString: 方法在接收者中找到指定的字符串,则返回的范围精确地指定找到它的位置。如果没有找到这个字符串,则返回范围的location成员被设为NSNotFound

如:subRange=[str rangeOfString:@”is fun”];

4、可变字符串

1>、介绍:NSMutableString类可以用来创建可以更改字符的字符串对象。因为该类是NSString类的子类,所以可以使用NSString类的所有方法。

2>、声明方式,如:NSMutableString *mstr;

3>、将mstr变量定义为一个变量,如:

Mstr=[NSMutableString stringWithString:str];

4>insertSring:atIndex: 方法将指定的字符串插入接收者中,插入点从指定的索引开始。

5>appendString: 方法将一个字符串插入另一字符串结尾。

6>deleteCharactersInRange: 方法可以删除字符串中指定数目的字符。 

7>setString: 方法可用来直接设置可变字符串的内容。   

8>replaceCharactersInRange: 方法用另一个字符串替换这个字符串中的部分字符。

9>replaceOccurrencesOfString:WithString:options:range: 方法用来执行搜索并全部替换。

(更多方法请参见《数字、字符和集合方法归纳》) 

5、所有对象去哪了

1>、所有由NSStringNSMutableString方法生成并返回的字符串对象,被创建者添加到自动释放池,将在系统释放池时全部释放。如果开发的程序创建了许多临时对象,则内存会累积起来,这时要采取不同的策略,在程序执行时释放内存,而不是在程序结尾释放。

2>NSURL对象:url是一个NSURL对象,path是指明文件路径的NSSring对象。

三、数组对象

1、介绍:Foundation数组是有序的对象集合。一个数组中的元素都是一个特定类型,但是这是是必需的。数组对象分为可变数组对象和不可变数组对象:不可变数组是由NSArray类处理的,而可变数组是由NSMutableArray处理。后者是前者的子类。

2、使用要求:必须包含#import<Foundation/NSArray.h>

3arrayWithObject: 方法用来创建使用一列对象作为元素的数组。

4objectAtIndex: 方法用于提取数组对象中指定元素。

5arrayWithCapactity: 方法分配NSMutableArray的素数。

6addObject: 方法向数组的末尾添加一个对象。

(更多方法请参见《数字、字符和集合方法归纳》) 

四、词典对象

1、概念:dictionary是由键-对象对组成的数据集合。

2、简介:词典可以是固定的,也可以是可变的。可变词典中记录可动态的添加和删除。可基于特定的键对词典搜索,也可以枚举它们的内容。

3、使用要求:需要添加 #import<Foundation/NSDictionary.h>

4、可变词典

1>、声明方式,如:NSMutableDictionary *glossary;

2>setObject:forKey: 方法将键-值添加到词典中。

3>objectForKey: 方法检索给定键的值。

5、枚举词典

1>、概念:键从词典中依次被检索,没有特定顺序。

2>、检索方式,如:

for(NSString *key in glossary)

NSLog(@”%@%@”,key,[glossary objectForKey:key]);

注:词典中的键是单值的,尽管它们通常是字符串,但不可以是任何类型。

(更多方法请参见《数字、字符和集合方法归纳》) 

五、集合对象

1、概念:以数组、字典和集的形式使用成组的对象,set是一组单值对象集合,它可以是可变的,也可以是不可变的。

2、可执行操作:搜索、添加、删除集合中的成员(公用于可变集合),比较两个集合,计算两个集合的交集与并集等。

3、使用要求:需要添加 #import<Foundation/NSSet.h>

4、基本方法

1>setWithObject: 使用一列对象创建新集合。

2>isEqualToSet: 确定两个集合是否相等。

3>addObject: 添加对象到集合中。

4>removeObject: 从集合中删除对象。

5>interset: 用于计算两个集合的交集。

6>union: 用于计算两个集合的并集。

(更多方法请参见《数字、字符和集合方法归纳》)     

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值