NS类 - NSNumber 的使用
(2013-05-05 20:32:36)
标签:
nsnumber的使用it |
分类: Mac/IOS那些事 |
先看demo如何来用
//创建一个封装成NSNumber对象类型
NSNumber
*num = [[NSNumberalloc]initWithInt:100];
NSNumber
*fnum = [[NSNumberalloc]initWithFloat:30.3];
NSLog(@"int
num :%@",num);
NSLog(@"float num:%@",fnum);
//还原成基本类型
int intnum =
[num intValue];
float
floatnum = [fnum floatValue];
NSLog(@"int
intnum :%d",intnum);
NSLog(@"float floatnum:%f",floatnum);
//直接是用类的方法
NSNumber
*nsnum = [NSNumbernumberWithDouble:3.3333f];
NSLog(@"nsnum double:%@",nsnum);
NSNumber的SDk的内容也是主要有三部分 其他的都是判断数值大小和是否相等的。
第一部分把nsnumber类型还原成基本类型
第二部分是把基本类型封装成你说number对象类型
第三部分是静态方法,直接使用
@interface NSNumber : NSValue
|--第一部分把nsnumber类型还原成基本类型
- (char)charValue;
- (unsignedchar)unsignedCharValue;
- (short)shortValue;
- (unsignedshort)unsignedShortValue;
- (int)intValue;
- (unsignedint)unsignedIntValue;
- (long)longValue;
- (unsignedlong)unsignedLongValue;
- (longlong)longLongValue;
- (unsignedlonglong)unsignedLongLongValue;
- (float)floatValue;
- (double)doubleValue;
- (BOOL)boolValue;
- (NSInteger)integerValue NS_AVAILABLE(10_5, 2_0);
- (NSUInteger)unsignedIntegerValue NS_AVAILABLE(10_5, 2_0);
- (NSString *)stringValue;
字符串化
- (NSComparisonResult)compare:(NSNumber *)otherNumber; 比较
- (BOOL)isEqualToNumber:(NSNumber *)number;
判断是否相等
- (NSString *)descriptionWithLocale:(id)locale;
@end
@interface NSNumber (NSNumberCreation)
|--第二部分是把基本类型封装成你说number对象类型
- (id)initWithChar:(char)value;
- (id)initWithUnsignedChar:(unsignedchar)value;
- (id)initWithShort:(short)value;
- (id)initWithUnsignedShort:(unsignedshort)value;
- (id)initWithInt:(int)value;
- (id)initWithUnsignedInt:(unsignedint)value;
- (id)initWithLong:(long)value;
- (id)initWithUnsignedLong:(unsignedlong)value;
- (id)initWithLongLong:(longlong)value;
- (id)initWithUnsignedLongLong:(unsignedlonglong)value;
- (id)initWithFloat:(float)value;
- (id)initWithDouble:(double)value;
- (id)initWithBool:(BOOL)value;
- (id)initWithInteger:(NSInteger)value NS_AVAILABLE(10_5, 2_0);
- (id)initWithUnsignedInteger:(NSUInteger)value NS_AVAILABLE(10_5, 2_0);
|--第三部分是静态方法,直接使用
+ (NSNumber *)numberWithChar:(char)value;
+ (NSNumber *)numberWithUnsignedChar:(unsignedchar)value;
+ (NSNumber *)numberWithShort:(short)value;
+ (NSNumber *)numberWithUnsignedShort:(unsignedshort)value;
+ (NSNumber *)numberWithInt:(int)value;
+ (NSNumber *)numberWithUnsignedInt:(unsignedint)value;
+ (NSNumber *)numberWithLong:(long)value;
+ (NSNumber *)numberWithUnsignedLong:(unsignedlong)value;
+ (NSNumber *)numberWithLongLong:(longlong)value;
+ (NSNumber *)numberWithUnsignedLongLong:(unsignedlonglong)value;
+ (NSNumber *)numberWithFloat:(float)value;
+ (NSNumber *)numberWithDouble:(double)value;
+ (NSNumber *)numberWithBool:(BOOL)value;
+ (NSNumber *)numberWithInteger:(NSInteger)value NS_AVAILABLE(10_5, 2_0);
+ (NSNumber *)numberWithUnsignedInteger:(NSUInteger)value
NS_AVAILABLE(10_5, 2_0);
@end
NSNumber的SDk的内容也是主要有三部分
@interface NSNumber : NSValue
|--第一部分把nsnumber类型还原成基本类型
- (char)charValue;
- (unsignedchar)unsignedCharValue;
- (short)shortValue;
- (unsignedshort)unsignedShortValue;
- (int)intValue;
- (unsignedint)unsignedIntValue;
- (long)longValue;
- (unsignedlong)unsignedLongValue;
- (longlong)longLongValue;
- (unsignedlonglong)unsignedLongLongValue;
- (float)floatValue;
- (double)doubleValue;
- (BOOL)boolValue;
- (NSInteger)integerValue NS_AVAILABLE(10_5, 2_0);
- (NSUInteger)unsignedIntegerValue NS_AVAILABLE(10_5, 2_0);
- (NSString *)stringValue;
- (NSComparisonResult)compare:(NSNumber *)otherNumber; 比较
- (BOOL)isEqualToNumber:(NSNumber *)number;
- (NSString *)descriptionWithLocale:(id)locale;
@end
@interface NSNumber (NSNumberCreation)
|--第二部分是把基本类型封装成你说number对象类型
- (id)initWithChar:(char)value;
- (id)initWithUnsignedChar:(unsignedchar)value;
- (id)initWithShort:(short)value;
- (id)initWithUnsignedShort:(unsignedshort)value;
- (id)initWithInt:(int)value;
- (id)initWithUnsignedInt:(unsignedint)value;
- (id)initWithLong:(long)value;
- (id)initWithUnsignedLong:(unsignedlong)value;
- (id)initWithLongLong:(longlong)value;
- (id)initWithUnsignedLongLong
- (id)initWithFloat:(float)value;
- (id)initWithDouble:(double)value;
- (id)initWithBool:(BOOL)value;
- (id)initWithInteger:(NSInteger)value NS_AVAILABLE(10_5, 2_0);
- (id)initWithUnsignedInteger:(NSUInteger)value NS_AVAILABLE(10_5, 2_0);
|--第三部分是静态方法,直接使用
+ (NSNumber *)numberWithChar:(char)value;
+ (NSNumber *)numberWithUnsignedChar:(unsignedchar)value;
+ (NSNumber *)numberWithShort:(short)value;
+ (NSNumber *)numberWithUnsignedShort:(unsignedshort)value;
+ (NSNumber *)numberWithInt:(int)value;
+ (NSNumber *)numberWithUnsignedInt:(unsignedint)value;
+ (NSNumber *)numberWithLong:(long)value;
+ (NSNumber *)numberWithUnsignedLong:(unsignedlong)value;
+ (NSNumber *)numberWithLongLong:(longlong)value;
+ (NSNumber *)numberWithUnsignedLongLo
+ (NSNumber *)numberWithFloat:(float)value;
+ (NSNumber *)numberWithDouble:(double)value;
+ (NSNumber *)numberWithBool:(BOOL)value;
+ (NSNumber *)numberWithInteger:(NSInteger)value NS_AVAILABLE(10_5, 2_0);
+ (NSNumber *)numberWithUnsignedIntege
@end
前一篇:NS类 - 父类和子类的关系