黑马程序员--NSArray,NSString,NSSet,NSDictionary,NSNumber,NSValue 及其可变(NSMutable..)

本文详细介绍了Objective-C中常见的基础数据类型,包括字符串、数组、集合、字典等,并对比了可变与不可变类型的特点。同时,还介绍了NSNumber与NSValue的用法以及NSDate的日期格式化技巧。

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

NSString 不可变字符串

—>NSMutableString  可变字符串

集合类
NSArray   不可变oc数组
oc数组,有顺序 只能存放 对象,字符串,不能存放常量,结构体
@[] 快速创建不可变数组,可变数组不可以使用

—>NSMutableArray 

         [数组名 addObject:元素]
NSSet  
没有顺序,集合
随机拿出一个元素
 NSString *str =  [s2 anyObject];
—>NSMutableSet

NSDictionary    字典 无顺序
key-> value 

NSDictionary *dict = @{@"name" : @"jack", @"address" : @"北京”};

id obj = dict[@"name"];

—>NSMutableDictionary

NSNumber  只能包装数字,char, yes,no
@20 自动将20转成number对象
@‘A

 @'A'; // NSNumber对象

      @"A"; // NSString对象

       // 将age变量包装成NSNumber对象

      int age = 100;

      @(age);

NSvalue  可以包装任何类型 例如结构体

    CGPoint p = CGPointMake(10, 10);

     // 将结构体转为Value对象

     NSValue *value = [NSValue valueWithPoint:p];

// 将value转为对应的结构体

     // [value pointValue];


NSDate 创建时间
     // 日期格式化类

     NSDateFormatter *formatter = [[NSDateFormatter alloc] init];

     // y 年  M 月  d 日

     // m 分 s 秒  H (24)时  h(12)时

     formatter.dateFormat = @"yyyy-MM-dd HH:mm:ss";

      NSString *str = [formatter stringFromDate:date];


NSObject

NSSet和NSArray的对比

 1> 共同点

 * 都是集合,都能存放多个OC对象

 * 只能存放OC对象,不能存放非OC对象类型(基本数据类型:int、char、float等,结构体,枚举)

 * 本身都不可变,都有一个可变的子类

 

 2> 不同点

 * NSArray有顺序,NSSet没有顺序

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值