foundation 数组NSArray学习

最近最近在忙于公司的项目研发学习iOS的进度比较慢了,但是还是坚持自己学习了一下foundation的基本学习语法拿来和大家一起分享学习。每天都到深夜在休息明天还要上班身体真心累,但是我始终相信好事多磨。这里面介绍了数组的可变,不可变查找数组中的一个元素,最后一个元素,和你制定的元素,还有遍历数组。

//  main.m

//  Arrary

//

//  Created by 张义航 on 14/11/21.

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

//

 

#import <Foundation/Foundation.h>

#import "Student.h"

//创建一个数组

void arrayCreate(){

    NSArray *array = [NSArray array];

    

    array = [NSArray arrayWithObject:@"123"];

    

    

    array = [NSArray arrayWithObjects:@"a",@"b",@"c", nil];

    

    unsigned int count= [array count];

    

    NSLog(@"%zi",count);

}

#pragma maker 数组的简单实用

void arrayUse(){

    NSObject *obj = [[NSObject alloc] init];

    NSArray *array1 = [NSArray arrayWithObjects:@"a",@"b",@"c",obj, nil];

    if ([array1 containsObject:@"a"]) {

        NSLog(@"ok");

    }

    

    NSString *last = [array1 lastObject];

    

    NSLog(@"%@",last);

    

    NSString *str = [array1 objectAtIndex:1];

      NSLog(@"%@",str);

    

    unsigned  int index = [array1 indexOfObject:@"b"];

     NSLog(@"%zi",index);

    

}

void arrayMemory(){

    Student *stu1 = [[Student alloc] init];

    Student *stu2= [[Student alloc] init];

    Student *stu3 = [[Student alloc] init];

    

    NSArray *array = [[NSArray alloc] initWithObjects:stu1,stu2,stu3, nil];

    NSLog(@"%zi",array.count);

    

}

 

void arrayMessage(){

    Student *stu1 = [Student student];

    Student *stu2 = [Student student];

    Student *stu3 = [Student student];

    

    NSArray *array = [NSArray arrayWithObjects:stu1,stu2,stu3, nil];

    

    [array makeObjectsPerformSelector:@selector(test)];

 

}

 

void arrayFor(){

    NSArray *array = [NSArray arrayWithObjects:@"1",@"2",@"2", nil];

//for循环遍历

//    int count =array.count;

//    for (int i = 0; i<count; i++) {

//        id obj = [array objectAtIndex:i];

//        NSLog(@"%i---%@",i,obj);

//    }

  //快速遍历

//    int i=0;

//    for (id obj in array) {

//         NSLog(@"%i---%@",i,obj);

//        i++;

//    }

    

//#pragma - maker block学习

//    [array enumerateObjectsUsingBlock:

//     ^(id obj, NSUInteger idx, BOOL *stop) {

//         NSLog(@"%i---%@",idx,obj);

//     }];

//    

    //迭代器的使用

    //正排序

    NSEnumerator *enu = [array objectEnumerator];

    //反排序

    NSEnumerator *enu1 = [array reverseObjectEnumerator];

    id obj = nil;

    while (obj = [enu1 nextObject]) {

        NSLog(@"%@",obj);

    }

}

 

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

    @autoreleasepool {

        arrayCreate();

        arrayUse();

        arrayMessage();

        arrayFor();

    }

    return 0;

}

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。