Object-c基础之四:预定义,条件编译,数组
1. 预定义:#define
在object-c中,跟C语言一样都是采用#define才使用,但末尾是没有分号的;
例子:
#define PI 3.14
在之后即可引用,这点在iphone开发中一定每个组建的tag非常好用,并且可以集合放一个定义文件中。
2. 条件编译:#ifdef,#end,#elseif
#ifdef,#else,#endif如我们常识认为的那样,程序会根据判断条件处理或者忽略某一个程序段。
例子:
#ifdef MAC_OS_X
# define DATADIR “/uxnl/data”
#else
# define DATADIR “\usr\data”
#endif
3. 数组
在object-c中,C语言的数组格式初始化和引用都能够用,但在object-c中不提倡使用。
(1)不可变数组:NSArray
初始化:
NSArray*array=[[NSArray alloc] init];
相同的初始化方法还有:
initWithArray;
initWithContentsOfFile;
initWithContentsOfURL;
initWithObjects;
同样还可以通过如下方法创建一个数组:
arrayWithArray;
arrayWithContentsOfFile;
arrayWithContentsOfURL;
arrayWithObject;
arrayWithObjects;
其他详细的可以参考IOS开发者文档。
(2)可变数组:NSMutableArray
NSMutableArray是在开发中最常用的数组,常用如下声明:
初始化:
NSMutableArray *mutableArray =[[NSMutableArray alloc] init];
还有:
arrayWithArray:array;
arrayWithObjects:;
arrayWithCapacity;
initWithCapacity;
另外还有增加元素的删除元素的方法,如下:
addObject:
addObjectFromArray:
insertObject:atIndex:
removeObject:
removeObjectAtIndex:
具体的可以参照IOS开发文档
(3)字典:NSDictionary
初始化的方法有:
NSDictionary *dictionary = [NSDictionary alloc] initWithObjectsAndKeys:
@"number1",@"1",@"number2",@"2",@"number3",@"3",nil];
同样也有多种相似的初始化方法,但开发中最常用的是:
+ (id)dictionaryWithObjects:(NSArray *)objects forKeys:(NSArray *)keys
这个可以根据键值对对相同的键值进行配对,对存储成对的数据非常管用。
相同的字典也有可变字典:NSMutableArray.这个属性的具体情况类似NSMutableArray,具体可以查看IOS开发文档。
今天的object-c的教程就到此结束,下次将讲解一些Xcode4.X的一些情况。