iOS中的数组操作大全

来源:互联网 发布:疯狂营销软件 编辑:程序博客网 时间:2024/05/12 10:10

iOS中的数组操作大全,赶紧收藏吧

(注意:数组中出现中文时直接NSLog(@" %@",array)输出为被转码的字符串,是正常的,内容已存储在了数组中,但要直接输出中文需要通过其他方法编码解析)


#import <Foundation/Foundation.h>int main(int argc, const char * argv[]) {        //    int arr[10] = {1,2,43};    //________________不可变数组NSArray_________________        //创建方式    NSString *s1 = @"张三";    NSString *s2 = @"小白";    NSString *s3 = @"大白";        /**     <1> alloc方式,数组的最后会有一个nil,代表数组的结尾     创建了一个数组,数组中有三个元素     */    NSArray *array = [[NSArray alloc] initWithObjects:s1,s2,s3, nil];        //<2> 类方法创建//    [NSArray arrayWithObjects:s1,s2,s3, nil];        //2.创建了一个数组,此数组中的元素,来自于array    NSArray *array1 =  [[NSArray alloc] initWithArray:array];//    [NSArray arrayWithArray:(NSArray *)];        //3.创建一个数组,只有一个元素//    NSArray *array3 = [NSArray arrayWithObject:s1];     //_________________常用方法_____________________            //1.通过下标取元素 objectAtIndex    NSArray *arr = [[NSArray alloc] initWithObjects:s1,s2,s3, nil];    NSString *s = [arr objectAtIndex:0];        //2.获取数组的元素个数    NSInteger count = [arr count]; //3等价于 arr.count            //3.是否包含某个对象    if ([arr containsObject:s1]) {                NSLog(@"包含张三这个元素");    }        //4.通过元素获取对应的下标    NSInteger a = [arr indexOfObject:@"daisdhais"];        //如果数组中没有此元素    if (a == NSNotFound) {                NSLog(@"数组中没有此元素");    }        //5.获取最后一个元素    NSString *str = [arr lastObject];        //6.获取第一个元素    NSString *str1 = [arr firstObject];        //7.追加一个元素(会产生新的数组,以前的数组并没有改变)    NSArray *arr2 = [arr arrayByAddingObject:@"赵6"];    //    [arr arrayByAddingObjectsFromArray:<#(NSArray *)#>];    //_____________________遍历数组_____________________        //1.普通遍历    for (NSInteger i = 0; i < arr.count ; i++) {                //取出对应的元素        NSString *s =  [arr objectAtIndex:i];                NSLog(@"s = %@",s);            }        //2.快速遍历    for (NSString *s in arr) { //没有下标                NSLog(@"s = %@",s);            }        /**     *  数组注意点:          1.数组越界  beyond bounds [0 .. 2]          2.OC数组中只能存放对象,而且不能为空          */    //    [arr objectAtIndex:4]; 程序崩溃,导致软件闪退     /**     *  数组的新语法     */    NSArray *arr4 = [NSArray arrayWithObjects:s1,s2,s3, nil];        //等价于上面,创建数组的新语法    NSArray *arr5 = @[s1,s2,s3];        //访问元素的新语法    NSString *string = arr5[0];                return 0;}



0 0