上一章Objective-C开发教程请查看:Objective-C代码块block的介绍和用法
Objective-C中的所有基本数据类型都不是对象,基本数据类型带有的算法操作相当简单,例如加减乘除。如果我们需要让基本数据类型使用更多的算法操作,那么可以使用对应的OC对象。
这一章我们讨论OC中的数字对象NSNumber,它包装了所有基本数据类型,提供一系列的操作。其中创建NSNumber对象的方法是使用NSNumber类的类方法(static方法),注意类方法的签名以”
+”
开始,以”
-“
开始的函数签名是对象方法,需要由对象实例来调用。注意OC中很多方法的命名方式类型,用的时候注意发现其中的相同点。
下面是NSNumber类的一些基本方法:
- + (NSNumber *)numberWithBool:(BOOL)value:使用BOOL类型的布尔值创建一个NSNumber对象。
- + (NSNumber *)numberWithChar:(char)value:使用一个char类型的值创建一个NSNumber对象。
- + (NSNumber *)numberWithDouble:(double)value:使用一个double双精度浮点值创建一个NSNumber对象。
- + (NSNumber *)numberWithFloat:(float)value:使用一个float单精度浮点值创建一个NSNumber对象。
- + (NSNumber *)numberWithInt:(int)value:使用一个int整型数创建一个NSNumber对象。
- + (NSNumber *)numberWithInteger:(NSInteger)value:使用一个NSInteger对象创建一个NSNumber对象。
- – (BOOL)boolValue:将对象中的值作为BOOL类型返回。
- – (char)charValue:将对象中的值作为char类型返回。
- – (double)doubleValue:将对象中的值作为double类型返回。
- – (float)floatValue:将对象中的值作为float类型返回。
- – (NSInteger)integerValue:将对象中的值作为NSInteger对象返回。
- – (int)intValue:将对象中的值作为int类型返回。
- – (NSString *)stringValue:将对象中的值作为字符串类型返回。
#import <
Foundation/Foundation.h>@interface SampleClass:NSObject
- (NSNumber *)multiplyA:(NSNumber *)a withB:(NSNumber *)b;
@end@implementation SampleClass- (NSNumber *)multiplyA:(NSNumber *)a withB:(NSNumber *)b {
float number1 = [a floatValue];
float number2 = [b floatValue];
float product = number1 * number2;
NSNumber *result = [NSNumber numberWithFloat:product];
return result;
}@endint main() {
SampleClass *sampleClass = [[SampleClass alloc]init];
NSNumber *a = [NSNumber numberWithFloat:10.5];
NSNumber *b = [NSNumber numberWithFloat:10.0];
NSNumber *result = [sampleClass multiplyA:a withB:b];
NSString *resultString = [result stringValue];
NSLog(@"The product is %@",resultString);
return 0;
}
推荐阅读
- Objective-C数组用法介绍 – Objective-C开发教程
- Objective-C代码块block的介绍和用法 – Objective-C开发教程
- Objective-C声明、定义函数、调用函数和函数参数 – Objective-C开发教程
- Objective-C条件语句详解 – Objective-C开发教程
- Objective-C循环语句和循环控制语句 – Objective-C开发教程
- Objective-C六大类型操作符详解 – Objective-C开发教程
- Objective-C使用变量和常量 – Objective-C开发教程
- Objective-C基本语法和数据类型 – Objective-C开发教程
- Xcode Target、Scheme、Build Settings、Porject和Workspace介绍 – Objective-C开发教程