iOS开发OC基础:NSNumber对象方法的使用

学习过OC的同学应该都知道,OC中很多类型都是对象,NSArray中存储的是对象类型。所以把基本的C语言中的数字类型转换为OC中的NSNumber类型很有必要,下面就介绍几个常用的方法:

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[])
{

    @autoreleasepool {
        //1.创建NSNumber对象
        NSNumber *num1 = [[NSNumber alloc] initWithFloat:10.5];
        NSLog(@"%@", num1);
        //2.将num1转为基本数据类型
        float value = [num1 floatValue];
        NSLog(@"%.2f", value);
        //3.将对象转换为NSString类型的对象
        NSString *numStr = [num1 stringValue];
        NSLog(@"%@", numStr);
        //如何将NSString类型的对象转为浮点型
        float value1 = [numStr floatValue];
        NSLog(@"%.3f", value1);
        
        //4.判断两个NSNumber类型的对象是否相等
        NSNumber *num2 = [[NSNumber alloc] initWithFloat:10.5];
        //isEqualToNumber: 比较的是对象中存储的数据
        BOOL isEqual = [num1 isEqualToNumber:num2];
        NSLog(@"isEqual=%d", isEqual);
        
        //5.比较 compare:
        NSComparisonResult result = [num1 compare:num2];
        NSLog(@"%ld", result);
        
    }
    return 0;
}

具体的一些操作说明可以看代码中的注释,说的比较清楚。因为代码比较短,所以就把完整的代码给放上去了,其实这也是我在学习中总结的东西,基本上只实现了一种方法:float与对象和字符串的相互转换,另外int、short等C语言中的数字类型也可以用类似的方法来实现。另外BOOL类型也可以存储到NSNumber对象中。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章