【iOS】Objective-C语言学习之数据类型

7 篇文章 0 订阅
3 篇文章 0 订阅

Objective-C中常用的数据类型有以下三种:

1.数组(NSArray)

在数组中,必须以nil结束。NSArray数组类上的方法有:

 

+arrayWithObjects:(id) firstObject,……;//声明数组,后面是各个元素,以nil结束
-(unsigned) count;//数组元素个数
-(id) objectAtIndex:(unsigned) index;//指定位置的元素
-(unsigned) indexOfObject:(id) object;//对象指定数组中的位置

例:

 

 

NSArray * citys = [NSArray arrayWithObjects:@"广州",@"深圳",@"北京"];
if([city indexOfObject:@"上海"] == NSNotFound){
         NSLog(@"列表没有上海");
}

NSArray属于静态数组,不能往该数组里动态添加元素。但可以使用NSMutableArray来动态管理数组, NSMutableArray是NSArray的子类,常用的方法有:

 

 

+(NSMutableArray *) array;//声明数组
-(void) addObject:(id) object;//添加元素
-(void) removeObject:(id) object;//移除指定的元素
-(void) removeAllObjects:(id) object;//移除全部元素

例:

NSMutableArray *city = [[NSMutableArray alloc] init];
[city addObject:@"广州"];
[city addObject:@"深圳"];
[city addObject:@"上海"];
[city removeObject:@"广州"];
[city removeObjectAtIndex:1];

 

2.集合(NSSet)

集合是一个无序的、不同元素的集合。其常用方法有:

 

+setWithObjects:(id)firstObject,……;//声明集合,后面的是各个元素,以nil结束
-(unsigned) count;//返回集合个数
-(BOOL) containsObject:(id)object;//判断指定对象是否包含在集合中

NSSet本身也是不可修改的集合。NSMutableSet是相应的可修改的集合,其常用方法有:

 

 

+(NSMutableSet *) set;//声明集合
-(void) addObject:(id) object;//添加一个元素到集合中
-(void) removeObject:(id) object;//从集合中删除一个元素
-(void) removeAllObjects;//删除所有元素
-(void) intersectSet:(NSSet *) otherSet;//求两个集合的交集
-(void) minusSet:(NSSet *) otherSet;//集合-指定集合(即不在指定集合内的元素)

 

3.字典(NSDictionary)

NSDictionary提供了"键-值"对的集合。它的方法有:

 

+dictionaryWithObjectAndKeys:(id) firstObject,……;//声明一个字典,以nil结束
-(unsigned) count;//获取字典中个数
-(id) objectForKey:(id) key;//根据key查找对应的值,如不存在,返回nil 

NSDictionary是不可修改的字典,可以使用NSMutableDictionary来动态添加/删除元素。常用方法有:

 

 

+(NSMutableDictionary *) dictionary;//声明一个动态字典
-(void) setObject:(id) object forKey:(id) key;//设置key和value
-(void) removeObjectForKey:(id) key;
-(void) removeAllObjects;

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值