OC_05_01

来源:互联网 发布:做淘宝的电脑配置 编辑:程序博客网 时间:2024/06/06 08:25
#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        //不可变数组 NSArray
        //初始化
        //先创建一个空的数组
        NSArray *array1 = [[NSArray alloc] init];
        NSArray *array2 = [NSArray array];
        
        //创建一个里面只有一个元素的不可变数组
        NSArray *array3 = [NSArray arrayWithObject:@"Yong"];
        
        //创建一个里面有多个元素的不可变数组
        NSArray *array4 = [NSArray arrayWithObjects:@"zengxinsheng",@"xuyu",@"shenzhengnan",@"chenyaoxing", nil];
        //nil只能出现在数组的最后,不能在数组中间存放nil,因为nil是一个NSArray的结束标志.
        
        //新语法
        NSArray *array5 = @[@"Yong"];
        
        NSArray *array6 = @[@"zengxinsheng",@"xuyu",@"shenzhengnan",@"chenyaoxing"];
        
        //根据另一个数组产生新的数组
        NSArray *array7 = [NSArray arrayWithArray:array6];
        
        //一般不使用,使用类方法创建
//        NSArray *array8 = [[NSArray alloc] initWithObjects:@"zengxinsheng",@"xuyu",@"shenzhengnan",@"chenyaoxing", nil];
        
        //从本地文件读取数组
        NSArray *array8 = [NSArray arrayWithContentsOfFile:@"字符串"];
        
        //从网络文件读取数组
//        NSURL *url = [NSURL URLWithString:@"网址"];
//        NSArray *array9 = [NSArray arrayWithContentsOfURL:url];
        NSArray *array9 =[NSArray arrayWithContentsOfURL:[NSURL URLWithString:@"网址"]];
        
        //求数组中的个数
        NSUInteger count = array6.count;
        NSLog(@"%lu",count);
        
        
        //数组的操作
        //访问数组中的元素
        //访问array6中的第一个元素
        NSString *str = [array6 objectAtIndex:0];
        
        NSLog(@"%@",str);
        
        for (int i = 0; i<array6.count; i++)
        {
            NSString *str1 = [array6 objectAtIndex:i];
            NSLog(@"%@",str1);
        }
        
        //新语法访问数组中的元素
        NSString *str2 = array6[0];
        NSLog(@"%@",str2);
        
        //封装NSNumber
        NSNumber *number1 = [NSNumber numberWithInt:5];
        //等价于
        NSNumber *number2 = @5;
        
        NSNumber *number3 = [NSNumber numberWithBool:YES];
        //等价于
        NSNumber *number4 = @YES;
        
        //通过数组中的元素找下标
        NSUInteger index = [array6 indexOfObject:@"zengxinsheng"];
        NSLog(@"%lu",index);
        
        //判断数组中是否存在某个元素
        BOOL flag = [array6 containsObject:@"zengxinsheng"];
        NSLog(@"%d",flag);
        
        //向不可变数组中增加一个元素,产生新的不可变数组
        NSArray *newArrar = [array6 arrayByAddingObject:@"wuzhipeng"];
        for (int i = 0; i<newArrar.count; i++)
        {
            NSString *str3 = [newArrar objectAtIndex:i];
            NSLog(@"%@",str3);
        }
        NSString *string = @"123-456-789";
        NSArray *array11 = [string componentsSeparatedByString:@"-"];//分割,去掉"-"
        NSLog(@"%@",array11);
        
        NSString *str4 = [newArrar componentsJoinedByString:@"~"];//连接,用"~"连起来
        NSLog(@"%@",str4);
        
        NSArray *array12 = @[@"123",@"456",@"789",@"000"];
        NSString *str5 = [array12 componentsJoinedByString:@"-"];
        NSLog(@"%@",str5);
        NSArray *array13 = [str5 componentsSeparatedByString:@"-"];
        NSLog(@"%@",array13);
        
        /*
         使用NSArray 类注意事项
         1.数组越界:当访问NSArray时,索引超出元素个数之后会报出一个异常结果,所以最好检查一下索引结果是否越界,然后在进行调用
         2.数组会对加入其中的对象自动把引用计数加一
         3.不能在数组中间存放nil,nil只能出现在数组的最后,因为nil是一个NSArray结束的标志
         */
        
        
        
    }
    return 0;
}

0 0
原创粉丝点击