注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

民主与科学

独立之人格,自由之思想

 
 
 

日志

 
 

【Object-c基础】预定义,条件编译,数组  

2015-07-22 21:32:57|  分类: iOS |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
原文:http://blog.csdn.net/qiaoshe/article/details/6895505
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:
在很多语言如 java , ruby , python中都有将字符串切分成数组或者将数组元素以某个间隔字符串间隔形成新的数组。 
其实NSArray也提供了这样的功能。 
使用-componentsSeparatedByString:来切分NSArray。 如: 
引用

NSString *string = @”one:two:three”; 
NSArray *aArray = [string componentsSeparatedByString:@":"];

用-componentsJoinedByString:来合并NSArray中的各个元素并创建一个新的字符串,如: 

string = [aArray componentsJoinedByString:@","]; 

这样,上面的数组就中的各个元素就以”,”分割形成一个字符串
具体的可以参照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开发文档。
 

  评论这张
 
阅读(217)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017