objective-c中不同数据类型之间的相互转换

作为一个Android客户端开发,因项目的需要,开始上手做IOS开发,完全的小白,经常会遇到各种需要做数据类型转换的地方,而每次遇到,都要在google一下,觉得太麻烦了,不如在这里做个总结,将各种类型转换的方法汇总一下,方便自己下次使用,有需要的同学也可以自取。

字符串类型NSString

  1. NSString和std::string的相互转换:

    a) NSString转std::string:

    //NSString转std::string
    NSString* tmp = @"Hello";
    std::string print = [tmp UTF8String];

    b) std::string转NSString:

    //std::string转NSString
    std::string tmp = "Hello";
    NSString* print = [NSString stringWithCString: tmp.c_str() encoding:NSUTF8StringEncoding];
  2. NSString和(const) char*的相互转换:

    a) NSString转char*/const char*:

    NSString* tmp = @"Hello";
    //NSString转char*
    char* print1 = (char*)[tmp UTF8String];
    //NSString转const char*
    const char* print2 = [tmp UTF8String];

    b) const char*/char*转NSString:

    //char*转NSString
    char* tmp1 = (char*)"Hello1";
    NSString* print1 = [NSString stringWithUTF8String:tmp1];
    //const char*转NSString
    const char* tmp2 = "Hello2";
    NSString* print2 = [NSString stringWithUTF8String:tmp2];
  3. NSString与基本数据类型的相互转换

    a) 基本数据类型转NSString:

    //int转NSString
    int tmp1 = 111;
    NSString* print1 = [NSString stringWithFormat:@"%d",tmp1];
    //float转NSString
    float tmp2 = 1.14159;
    NSString* print2 = [NSString stringWithFormat:@"%f",tmp2];
    //保留2位小数
    NSString* print3 = [NSString stringWithFormat:@"%.2f",tmp2];
    //long long转NSString

你可能感兴趣的:(iOS,ios,objective-c)