NSArrayNSNumber

来源:互联网 发布:航天信息发票认证软件 编辑:程序博客网 时间:2024/09/21 09:03
<span style="font-size:18px;">数组的价值:</span>
<span style="font-size:18px;">(1)存储多个元素. (2)存储元素只能是对象,对象可以是不同类型的.(3)数组是一个有序的集合 (4)数组中的元素可以重复,而且重复的对象会成为数组元素        //1.创建数组对象        //(1)使用便利构造器        //arrayWithObjects  创建对象时可以指定多个对象元素,元素元素与元素之间使用,号间隔   输出结果格式为小括号,中间用,号隔开        //nil  作为数组元素存放的结束标志.遇到nil  之后, 之后的元素都不会放入数组中        NSArray *array1 = [NSArray arrayWithObjects:@"Love", @"Summer", @"Angle",  @"Sunshine", @"Sunshine", nil];        NSLog(@"array1 = %@", array1);        //(2)使用初始化方法        NSArray *array2 = [[NSArray alloc] initWithObjects:@"Love", @"Summer", @"Sunshine", nil];        NSLog(@"array2 = %@", array2);        //2.获取元素个数        NSUInteger count = [array1 count];        NSLog(@"count = %ld", count);        //3.根据索引值获取对象        //(1)获取指定下标对应的元素        NSString *str1 = [array1 objectAtIndex:1];        NSLog(@"str1 = %@", str1);        //(2)获取数组中的第一个元素        //firstObject 与 lastObject 方法比  objectAtIndex:方法  好再当数组元素为空时,会返回 nil 而objectAtIndex:则会造成程序crash . index 0 beyond bounds of empty array 数组下标越界        NSString *str2 = [array1 objectAtIndex:1];        NSLog(@"str2 = %@", str2);        NSString *firstObject= [array1 firstObject];        NSLog(@"firstObject = %@", firstObject);        //(3)获取数组中的最后一个元素        NSString *lastObject = [array1 lastObject];        NSLog(@"lastObject = %@", lastObject);        //4.获取对象在数组中的索引值        NSUInteger index = [array1 indexOfObject:@"Sunshine"];        NSLog(@"index = %lu", index);        //5.判断是否包含某个对象        BOOL isExist = [array1 containsObject:@"Angle"];        NSLog(@"isExist = %d", isExist);        //6.数组排序(幼儿版)        NSArray *sortArr = [array1 sortedArrayUsingSelector:@selector(compare:)];        NSLog(@"sortArr = %@", sortArr);        //7.快速遍历(快速枚举)        //方法一        for (int i = 0; i < [array1 count]; i++) {            NSString *str = [array1 objectAtIndex:i];            NSLog(@"%@", str);        }        /**         *  forin 快速枚举.(快速遍历),用于将集合中的元素遍历出来,         type *object   //type 数组中元素的类型         //object 起一个对象的名字(自己拟定)         collection :集合 (也就是大容器, 数组, 字典, 或者集合)         */        for (NSString *str in array1) {            NSLog(@"%@", str);        }        //8.创建数组对象        NSMutableArray *array3 = [[NSMutableArray alloc] initWithObjects:@"Summer", @"Sunshine", @"Angle", @"Cindy", nil];        NSLog(@"%@", array3);        //9.删除元素        [array3 removeLastObject];        NSLog(@"%@", array3);        [array3 removeObjectAtIndex:1];        NSLog(@"%@", array3);        [array3 removeObject:@"Summer"];        NSLog(@"%@", array3);        //10.添加数组对象        NSArray *newArr = [array1 arrayByAddingObject:@"Angle"];        NSLog(@"newArr = %@", newArr);        //11.为可变的数组添加对象        NSMutableArray *mutableArray = [NSMutableArray array];        [mutableArray addObject:@"Love"];        NSLog(@"mutableArray, = %@", mutableArray);        //12.添加对象覆盖掉原来的        [mutableArray setArray:array1];        NSLog(@"mutableArray = %@",mutableArray);        //13.为可变数组添加一个数组对象        [mutableArray addObjectsFromArray:array1];        NSLog(@"mutableArray, = %@", mutableArray);        //14.替换数组中指定下标的对象        [mutableArray replaceObjectAtIndex:1 withObject:@"lala"];        NSLog(@"mutableArray = %@",mutableArray);        //15.交换两个指定下标的两个对象的位置        [mutableArray exchangeObjectAtIndex:0 withObjectAtIndex:2];        NSLog(@"mutableArray = %@",mutableArray);        //16.在指定位置插入对象        [mutableArray insertObject:@"xxx" atIndex:1];        NSLog(@"mutableArray = %@",mutableArray);        //17.排序幼儿版,对原数组进行排序        [array3 sortUsingSelector:@selector(compare:)];        NSLog(@"array3 = %@", array3);        //18.快速遍历        //如果数组中的对象类型不同,取出来的元素类型各异,所以我们统一使用一个对象的泛型,id类型,可以代表所有的对象类型        for (NSString *str in array3) {            NSLog(@"str = %@", str);        }        //19.清空可变数组中的元素的对象        [mutableArray removeAllObjects];        NSLog(@"mutableArray = %@",mutableArray);                        //NSNumber相关用法        //测试 long long 所占字节空间        NSLog(@"%lu", sizeof(long long ));        //1.定义基本数据类型变量        char a = 'f';        int  b = 120;        //        @120;//返回的是对象 NSNumber 类型        //        @"120";//返回的是对象,NSString 类型        short c = 100;        long d = 1000;        float e = 10.2;        double f = 12.25;        BOOL isTure = YES;        //2.将基本数据类型转为NSNumber类型的对象        NSNumber *a1 = [NSNumber numberWithChar:a];        NSLog(@"%@", a1);        NSNumber *a2 = [NSNumber numberWithInt:b];        NSLog(@"%@", a2);        NSNumber *a3 = [NSNumber numberWithShort:c];        NSLog(@"%@", a3);        NSNumber *a4 = [NSNumber numberWithLong:d];        NSLog(@"%@", a4);        NSNumber *a5 = [NSNumber numberWithFloat:e];        NSLog(@"%@", a5);        NSNumber *a6 = [NSNumber numberWithDouble:f];        NSLog(@"%@", a6);        NSNumber *a7 = [NSNumber numberWithBool:isTure];        NSLog(@"%@", a7);        //方法一:        NSArray *arr = [NSArray arrayWithObjects:a1, a2, a3, a4, a5, a6, a7,nil];        NSLog(@"%@",arr);        //简写方法二:        NSArray *arr1 = @[a1, a2, a3, a4, a5, a6, a7];        NSLog(@"%@",arr1);        //3.将NSNumber类型的对象转为基本数据类型        char a10 = [a1 charValue];        NSLog(@"%c", a10);        int a11 = [a2 intValue];        NSLog(@"%d", a11);        //4.NSNumber 类型对象的比较        NSLog(@"%ld",[a1 compare:a2]);</span>

0 0
原创粉丝点击