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

  • 相关阅读:
    获取最近6个月的年月(yyyyMM,不包括当月)
    checkbox与<c:forEach>在开发中遇到的问题记录
    MyBatis开发-->增删改
    MyBatis开发-->接口方式编程
    MyBatis开发-->入门
    android-async-http框架之与网络进行数据交互
    android-async-http框架之与服务器进行数据交互
    jQuery截取{}里的字符串及获取json里的值
    SSH整合之三:添加Hibernate环境且使之与Spring进行整合
    angular源码剖析之Provider系列--QProvider
  • 原文地址:https://www.cnblogs.com/rmbteam/p/2221832.html
Copyright © 2011-2022 走看看