OC课堂笔记->数组NSArray

本文介绍了Objective-C中的数组使用方法,包括不可变数组(NSArray)与可变数组(NSMutableArray)的创建、操作及常见用法,并简要说明了标量类型如何转换为NSNumber。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

OC中数组NSArray

 NSArray不可变数组

    //OC中的数组,只能存对象,不可以存标量;(例如:int,float,double,char....)

    //1.常量的方式初始化一个数组;

    NSArray *arr1 = @[@"1",@"2",@"3",@"3"];

    //NSLog(@"%@",arr1[3]);

    //2.便利构造器

    NSArray *arr2 = [NSArray arrayWithObject:@"呵呵"];//这是一个不可变的数组,里面只有一个元素

    NSLog(@"%@",arr2[0]);

    //多元素数组,(如果遇到.nil停止);

    NSArray *arr3 = [NSArray arrayWithObjects:@"321312",@"324234",@"897",nil];

    NSLog(@"%@",arr3[0]);

    //使用

    //count是用来计算数组有几个元素;

    NSUInteger i =[arr1 count];

    NSLog(@"%lu",i);

    //使用下标选取数组中的值.

    NSString *s1 = [arr1 objectAtIndex:3];

    NSLog(@"%@",s1);

    

    

    //可变数组

    //NSMutableArray 不可以使用常量初始化方法

    NSMutableArray *marr = [NSMutableArray arrayWithObjects:@"111",@"222",@"333",nil];

     NSLog(@"%@",marr[0]);

    //创建一个空的数组可变字符串

    NSMutableArray *marr1 = [NSMutableArray array];

    //给可变字符串添加元素

    [marr1 addObject:@"111"];

    

    //添加到指定位置

    [marr1 insertObject:@"222" atIndex:0];

    NSLog(@"%@",marr1);

    //交换两个位置的元素

    [marr1 exchangeObjectAtIndex:1 withObjectAtIndex:0];

    NSLog(@"%@",marr1);

    //使用

    NSLog(@"%@",marr1[0]);

    //从0位置取值

    [marr1 objectAtIndex:0];

    //给0位置赋值

    [marr1 replaceObjectAtIndex:0 withObject:@"123"];

    //删除

    //removeObject:删除指定元素,如果数组中没有那个元素就什么都不删除;

    [marr removeObject:@"222"];

    NSLog(@"%@",marr);

    //指定下表删除

    [marr removeObjectAtIndex:0];

    NSLog(@"%@",marr);

    */

    

    

//标量转换

    //NSNumber

    //转int

    int i = 10;

    NSNumber *n1 = [NSNumber numberWithInt:i];

    NSLog(@"%@",n1);

    //转float

    float f = 1.3;

    NSNumber *n2 = [NSNumber numberWithFloat:f];

    NSLog(@"%@",n2);

    //转回来

    int i1 = [n1 intValue];

    float f1 = [n2 floatValue];


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值