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

  • 相关阅读:
    数据仓库
    HiveSQL 数据定义语言(DDL)
    HiveSQL 数据操控、查询语言(DML、DQL)
    【ASP.NET Core】Blazor+MiniAPI完成文件下载
    MySQL的WAL(WriteAhead Logging)机制
    MySQL系列 | 索引数据结构大全
    眼见为实,看看MySQL中的隐藏列
    mysql的默认隔离级别:可重复读(Repeatable Read)
    缓存淘汰算法LRU算法
    Android设计模式系列(12)SDK源码之生成器模式(建造者模式)
  • 原文地址:https://www.cnblogs.com/rmbteam/p/2221832.html
Copyright © 2020-2023  润新知