• NSArray


    //

    //  main.m

    //  03-NSArray数组

    //

    //  Created by apple on 14-3-20.

    //  Copyright (c) 2014年 apple. All rights reserved.

    //

    #import <Foundation/Foundation.h>

    #import "Person.h"

    //1.创建数组的方式

    //2.获取数组中的元素

    //3.数组中村粗的实际上是对象的指针地址

    //4.打包数据,方便参数传递

    int main(int argc, const char * argv[])

    {

        @autoreleasepool {

            

            {

                //1.创建集合

                //NSArray 是不可变数组,一旦创建完成就不能够对数组进行,添加,删除等操作

                NSArray * array = [[NSArray alloc] init];

                

                    NSLog(@"%@",array);

                

                //2.通过构造方法的方式创建一个NSArray

                //在创建一个NSArray的时候,集合的最后一个元素一定是nil

                NSArray * array1 = [NSArray arrayWithObjects:@"one",@"two",@"three", nil];

                NSLog(@"%@",array1);

                

                //3.数组中可以存储不同类型的对象

                NSNumber * number = [NSNumber numberWithInt:10];

                NSArray * array2 = [[NSArray alloc] initWithObjects:@"one",@"two",number, nil];

                NSLog(@"array2  %@",array2);

                

                //4.数组实际上存储的时对象的地址,同样也可以存储数组的地址

                NSArray * a1 = [[NSArray alloc] initWithObjects:@"one",@"two",@"three", nil];

                NSArray * a2 = [[NSArray alloc] initWithObjects:@"1",@"2",@"3", nil];

                NSArray * a3 = [[NSArray alloc] initWithObjects:a1,a2, nil];

                

                NSLog(@"a3 %@",a3);

                

                //5.存储自定义的对象

                //最好都给我重写 description方法

                Person * p1 = [[Person alloc] initWithName:@"xiaozhe" andAge:20];

                Person * p2 = [[Person alloc] initWithName:@"hell" andAge:18];

                Person * p3 = [[Person alloc] initWithName:@"marray" andAge:38];

                

                NSArray * array3 = [[NSArray alloc] initWithObjects:p1,p2,p3, nil];

                NSLog(@"array3  %@",array3);

                

                //6.数组中存储基本数据类型,

                //如果你要在数组中存储基本数据类型,请给我包装好了之后在去存 NSNumber

                //注意不要把nil值存储到NSArray中,会导致数据丢失

                NSString * str = nil;

                NSArray * array4 = [[NSArray alloc] initWithObjects:@"2",str,[NSNumber numberWithInt:23], nil];

                NSLog(@"array4 %@",array4);

                

                //7.创建数组的快捷方式

                NSArray * karray = @[@"a",@"b",@"c"];

                NSLog(@"karray %@",karray);

                

                //8.快速获得一个数组中的元素

                NSString * kstr = karray[0];

                NSLog(@"kstr %@",kstr);

            }

    #pragma mark 从集合中取出对象

            

            {

                //9.从集合中取出数据

                NSArray * array = [[NSArray alloc] initWithObjects:@"one",@"two",@"three", nil];

                //数组的index时从0开始的

                NSString * str = [array objectAtIndex:0];

                NSLog(@"str %@",str);

                

                //10.获得数组的元素个数

                NSUInteger arrayCount = [array count];

                NSLog(@"arrayCount %d",arrayCount);

                

            }

            

            

    #pragma mark 判断数组中是否存在某个对象

            {

                

                Person * p1 = [[Person alloc] initWithName:@"xiaozhe" andAge:20];

                Person * p2 = [[Person alloc] initWithName:@"nihao" andAge:30];

                

                NSArray * array = @[p1,p2];

                

                BOOL isContain = [array containsObject:p1];

                if (isContain)

                {

                    NSLog(@"存在");

                }else

                {

                    NSLog(@"不存在");

                }

                

            }

            

        }

        return 0;

    }

  • 相关阅读:
    C语言利用fgetc复制拷贝文件内容
    linux 安装gcc 和 g++
    C宏定义和使用
    C的realloc的动态分配扩展和缩小内存
    C用malloc 向系统申请一个大小为n*4个字节的内存块
    GDB core命令的使用调试段错误
    GDB的安装
    C字符指针数组的使用
    C二维字符数组的使用及如何获取二维数组的总行数和总列数!
    C二维数组用指针地址遍历
  • 原文地址:https://www.cnblogs.com/supper-Ho/p/6179567.html
Copyright © 2020-2023  润新知