Foundation框架常用类(一)

本文详细介绍了 Objective-C 中 NSNumber、NSString 和 NSArray 类的使用方法,包括创建对象、转换数据类型、字符串操作及数组管理等核心知识点。

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

object-c学习笔记:

 一、NSNumber类 

主要是用来将基本数据类型封装为对象


//创建NSNumber对象

        NSNumber *monthNumber = [NSNumber numberWithInt:03];

        NSNumber *lengthNumber = [NSNumber numberWithFloat:10.9];

        NSLog(@"monthNumber is %@", monthNumber);

        NSLog(@"lengthNumber is %@", lengthNumber);

        

        //NSNumber对象还原成基本数据类型

        int month = [monthNumber intValue];

        float length = [lengthNumber floatValue];

        NSLog(@"month = %d", month);

        NSLog(@"length = %.1f", length);



二、NSString类




//_____________________NSString_____________________

        // 创建一个常量字符串

        NSString *string1 = @"常量字符串";

        NSLog(@"string1 = %@", string1);

        

        // 创建一个空字符串

        NSString *string2 = [[NSString alloc] init];

        NSString *string3 = [NSString string];

        NSLog(@"string2 = %@", string2);

        NSLog(@"string3 = %@", string3);

        

        // 快速创建一个字符串  常量区

        NSString *string4 = [[NSString alloc] initWithString:@"实例方法快速创建字符串"];

        NSString *string5 = [NSString stringWithString:@"类方法快速创建字符串"];

        NSLog(@"string4 = %@", string4);

        NSLog(@"string5 = %@", string5);

        

        // 创建一个格式化字符串   堆区

        NSString *string6 = [[NSString alloc] initWithFormat:@"实例方法创建格式化字符串  number is %d", 10];

        NSString *string7 = [NSString stringWithFormat:@"类方法创建格式化字符串  float is %f", 10.8];

        NSLog(@"string6 = %@", string6);

        NSLog(@"string7 = %@", string7);

        

        // 在常量区所以地址相同

        NSString *string8 = [[NSString alloc] initWithString:@"aaa"];

        NSString *string9 = [NSString stringWithString:@"aaa"];

        

        // ==比较的是指向的地址

        if (string8 == string9) {

            NSLog(@"same pointer");

        } else {

            NSLog(@"different pointer");

        }

        

        // 比较字符串的内容

        if ([string8 isEqualToString:string9]) {

            NSLog(@"same content");

        } else {

            NSLog(@"different content");

        }



三、NSArray类


//_____________________NSArray_____________________

        // 数组的创建

        NSArray *array1 = [NSArray arrayWithObject:@"one"];

        NSArray *array2 = [NSArray arrayWithObjects:@"one", @"two", @"three", nil];

        NSArray *array3 = [NSArray arrayWithArray:array1];

        NSLog(@"array1 = %@", array1);

        NSLog(@"array2 = %@", array2);

        NSLog(@"array3 = %@", array3);

        

        // 取数组的长度

        int count = [array2 count];

        NSLog(@"count = %d", count);

        

        NSArray *array4 = [[NSArray alloc] initWithArray:array2];

        NSLog(@"array4 = %@", array4);

        

        // 取数组中指定位置的对象

        NSString *string1 = [array2 objectAtIndex:1];

        NSLog(@"string1 = %@", string1);

        

        // 将数组组成一个字符串

        NSString *string2 = [array2 componentsJoinedByString:@","];

        NSLog(@"string2 = %@", string2);

        

        // 判断数组中是否包含指定的对象

        BOOL isContain = [array2 containsObject:@"two"];

        NSLog(@"isContain : %d", isContain);

        

        // 返回指定对象在数组中的下标

        int index = [array2 indexOfObject:@"two"];

        NSLog(@"index = %d", index);

        

        // 返回数组中的最后一个对象

        NSString *string3 = [array2 lastObject];

        NSLog(@"string3 = %@", string3);

        

        ///////////////////////////

        // 可变数组 NSMutableArray;

        NSMutableArray *mutableArray1 = [NSMutableArray arrayWithObjects:@"one", @"two", @"three",  nil];

        NSLog(@"mutableArray1 = %@", mutableArray1);

        [mutableArray1 addObject:@"four"];

        NSLog(@"mutableArray1 = %@", mutableArray1);

        // 还有一系列的方法 insertObjectAt  remove等等

        // 在指定位置搜入一个数

        [mutableArray1 insertObject:@"four" atIndex:3];

        NSLog(@"mutableArray1 = %@", mutableArray1);

        // 删除指定的对象

        [mutableArray1 removeObject:@"one"];

        NSLog(@"mutableArray1 = %@", mutableArray1);

        // 替换

        [mutableArray1 replaceObjectAtIndex:2 withObject:@"4"];

        NSLog(@"mutableArray1 = %@", mutableArray1);

        

        /////////////////////////////

        // 数组的遍历

        //  这种方式遍历效率低

        int count1 = [mutableArray1 count];

        for (int i = 0; i < count1; i++) {

            NSLog(@"elecment : %@", [mutableArray1 objectAtIndex:i]);

        }

    

        // 效率高  当不确定对象的类型时,可以将NSString用id代替,用id时不要*

        for (NSString *str in mutableArray1) {

            NSLog(@"element:  --> %@", str);

        }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值