zoukankan      html  css  js  c++  java
  • Objectc基础之四:预定义,条件编译,数组

    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的一些情况。

  • 相关阅读:
    [openjudge] jubeeeeeat
    [BJOI2006] 狼抓兔子
    [模板]网络最大流
    [HNOI2002]营业额统计
    【Java学习笔记之十一】Java中常用的8大排序算法详解总结
    【Java学习笔记之十】Java中循环语句foreach使用总结及foreach写法失效的问题
    【Java学习笔记之九】java二维数组及其多维数组的内存应用拓展延伸
    【Java学习笔记之八】JavaBean中布尔类型使用注意事项
    【Java学习笔记之七】java函数的语法规则总结
    二分图匹配--匈牙利算法模板
  • 原文地址:https://www.cnblogs.com/liangle/p/2512567.html
Copyright © 2011-2022 走看看