1.NSNumber
#import <Foundation/Foundation.h>
int main(){
/** NSNumber包装int、float、double、... **/
NSNumber * num1 = [NSNumber numberWithInt:10];
NSNumber * num2 = [NSNumber numberWithFloat:453.5];
NSNumber * num3 = @456;
NSNumber * num4 = @YES;
NSNumber * num5 = @'a'; // 不是"a",@""是字符串
int b = 98;
NSNumber * num6 = @(b);
/** NSSNuber转为int **/
[num6 intValue];
// 数字转字符串
NSString *str = [NSString stringWithFormat:@"%d", b];
// 字符串转数字
[str intValue];
}2.NSValue
/** NSNumber继承自NSValue **/
// NSValue可以包装任何数据
NSValue * val1 = [NSValue valueWithPoint:NSMakePoint(0, 0)];
NSValue * val2 = [NSValue valueWithRect:NSMakeRect(0, 0, 100, 100)];
NSValue * val3 = [NSValue valueWithSize:NSMakeSize(0, 0)];
NSValue * val4 = [NSValue valueWithRange:NSMakeRange(0, 100)];
NSPoint point = [val1 pointValue]; // 转NSPoint- end
本文深入探讨了Objective-C中的NSNumber与NSValue类的使用方法,包括数值转换、字符串与数字间的互转,以及如何利用NSValue封装各种类型的数据。详细介绍了这两个类在实际开发中的应用场景。

2526

被折叠的 条评论
为什么被折叠?



