zoukankan      html  css  js  c++  java
  • NSNumber

    1.NSNumber基本概念

    • NSArrayNSDictionary中只能存放OC对象,不能存放intfloatdouble等基本数据类

    • 如果真想把基本数据(比如int)放进数组或字典中,需要先将基本数据类型包装成OC对象

    • NSNumber可以将基本数据类型包装成对象,这样就可以间接将基本数据类型存进NSArrayNSDictionary中

    2.NSNumber的创建

    • 以前
    + (NSNumber *)numberWithInt:(int)value;
    + (NSNumber *)numberWithDouble:(double)value;
    + (NSNumber *)numberWithBool:(BOOL)value;
    • 现在
    @10;
    @10.5;
    @YES;
    @(num);

    3.从NSNumber对象中的到基本类型数据

    - (char)charValue;
    - (int)intValue;
    - (long)longValue;
    - (double)doubleValue;
    - (BOOL)boolValue;
    - (NSString *)stringValue;
    - (NSComparisonResult)compare:(NSNumber *)otherNumber;
    - (BOOL)isEqualToNumber:(NSNumber *)number;
    //  main.m
    //  NSNumber
    
    
    #import <Foundation/Foundation.h>
    
    int main(int argc, const char * argv[]) {
    
        int age = 10;
        double number= 5.1;
        int value =  6;
    //    NSArray *arr =  @[age, number, value];
        // 1.将基本数据类型转换为对象类型
        NSNumber *ageN = [NSNumber numberWithInt:age];
        NSNumber *numberN = [NSNumber numberWithDouble:number];
        NSNumber *valueN = [NSNumber numberWithInt:value];
        
        NSArray *arr = @[ageN, numberN, valueN];
        NSLog(@"arr = %@", arr);
        
        // 2.将对象类型转换为基本数据类型
    //    int temp = [ageN intValue];
    //    double temp = [numberN doubleValue];
    //    NSLog(@"%f", temp);
        
        // 3.基本数据类型转换对象类型简写
        // 注意: 如果传入的是变量那么必须在@后面写上(), 如果传入的常量, 那么@后面的()可以省略
    //    NSNumber *temp = @(number);
        NSNumber *temp  =@10.10;
        NSLog(@"%@", temp);
        
        return 0;
    }
  • 相关阅读:
    C# WPF开源控件库MaterialDesign介绍
    C# MQTT 服务端客户端通讯
    C#串口调试工具 (WPF/MVVM结构完整示例版)
    WPF转换器
    WPF动画基础及实例
    WPF MVVM架构 EF、WCF、IOC 设计示例经典
    SpringMVC中采用简洁的配置实现文件上传
    Maven 默认 SpringMVC-servlet.xml 基本配置
    maven pom.xml基本设置
    maven pom.xml设置jdk编译版本为1.8
  • 原文地址:https://www.cnblogs.com/xufengyuan/p/6647714.html
Copyright © 2011-2022 走看看