• Objective-C字符串初识(下)


    1.基本数据类型与字符串的相互转换

      1.1基本数据类型转换到NSString

     1         // 1 int -> 转换成NSString
     2         //  5   @"5"
     3         int age = 18;
     4         NSString * str = [[NSString alloc] initWithFormat:@"%d",age];
     5         
     6         NSLog(@"%@",str);
     7         
     8         
     9         /*
    10          //7.将任意输入的数字,转换成字符串。
    11          //如 125 ---》 @"125"      scanf
    12          
    13          */
    14 //        {
    15 //            int num;
    16 //            scanf("%d",&num);
    17 //            NSString * str = [[NSString alloc] initWithFormat:@"%d",num];
    18 //            NSLog(@"%@",str);
    19 //        }
    20         // float -> NSString
    21         float f = 1.25;
    22         NSString * str2 = [[NSString alloc] initWithFormat:@"%f",f];
    23         NSLog(@"%@",str2);
    24         // double -> NSString
    25         double d = 2.53456;
    26         NSString * str3 =[[NSString alloc] initWithFormat:@"%f",d];
    27         // char -> NSString
    28         char c = 'a';
    29         NSString * str4 = [[NSString alloc] initWithFormat:@"%c",c];

      1.2 NSStirng向基本数据类型转换

     1         // NSString -> int
     2         NSString * ageStr = @"18";
     3         int age1 = [ageStr intValue];
     4         
     5         NSLog(@"%d",age1);
     6         // NSString -> float
     7         NSString * str5 = @"1.23";
     8         float f1 = [str5 floatValue];
     9         NSLog(@"%f",f1);
    10         // NSString -> double
    11         NSString * str6 = @"2.345678";
    12         double d1 = [str6 doubleValue];
    13         NSLog(@"%.4f",d1);

      需要保证数据的正确性

    1         NSString * str7 = @"i386";
    2         int i2 = [str7 intValue];
    3         NSLog(@"%d",i2);
    4         //这种情况无法转换得到386
    
    

     

    2.大小写的转换

      2.1 小写转化为大写

    1         // 转换成大写
    2         NSString * str10 = @"qianfeng";
    3         NSString * str11 = [str10 uppercaseString];
    4         NSLog(@"%@",str11);

      2.2 大写转化为小写

    1         // 转换成小写
    2         NSString * str12 = [str11 lowercaseString];
    3         NSLog(@"%@",str12);

      2.3 首字母大写

    1         // 首字母大写,其余字母小写
    2         NSString * str13 = [str12 capitalizedString];
    3         NSLog(@"%@",str13);
    4         

     

    3.字符串的重组

      3.1多数据拼接为一个字符串

        stringWithFormat方法

    1         int year = 2015;
    2         int month = 10;
    3         int day = 29;
    4         
    5         NSString * address = @"北京市海淀区宝胜北里28号四楼前锋教育";
    6         
    7         NSString * dateAndAddress = [NSString stringWithFormat:@"%d年%d月%d日 %@",year,month,day,address];
    8         
    9         NSLog(@"%@",dateAndAddress);

      3.2 字符串末尾增加新字符串

        stringByAppendingString方法

    1         NSString * str = @"qianfeng";
    2         // qianfeng.com
    3         NSString * str2 = [str stringByAppendingString:@".com"];
    4         NSLog(@"%@",str2);

      3.3 在指定范围内替换字符

        stringByReplacingCharactersInRange方法

    1         NSString * str3 = @"www.baidu.com";
    2         // www.qianfeng.com
    3         NSRange range = {4,5};
    4         NSString * str4 = [str3 stringByReplacingCharactersInRange:range withString:@"qianfeng"];
    5         NSLog(@"%@",str4);

      3.4 使用新字符串替换原有字符串

        stringByReplacingOccurrencesOfString:(NSString *)    withString:(NSString *) 方法

    1         // www.qianfeng.com
    2         // www-qianfeng-com
    3         NSString * str5 = @"www.qianfeng.com";
    4         NSString * str6 = [str5 stringByReplacingOccurrencesOfString:@"." withString:@"-"];
    5         // occur
    6         NSLog(@"%@",str6);

    4. 字符串写入文件 与从文件读取字符串

      4.1 写入文件内

        - (BOOL)writeToFile:(NSString *)path atomically:(BOOL)useAuxiliaryFile encoding:(NSStringEncoding)enc error:(NSError **)error;

     1        NSString * str = @"我在千锋快乐地学习";
     2         NSString * path = @"/Users/wangqitai/Desktop/1559 /day04/";
     3         
     4         NSError * a;
     5         
     6         [str writeToFile:path atomically:YES encoding:NSUTF8StringEncoding error:&a];
     7         
     8         if (a == nil) {
     9             NSLog(@"写入成功 %@",a);
    10         } else {
    11             NSLog(@"写入失败 %@",a);
    12         }

      

      4.2 从文件读入字符串

        - (nullable instancetype)initWithContentsOfFile:(NSString *)path encoding:(NSStringEncoding)enc error:(NSError **)error;

     1         NSString * path = @"/Users/wangqitai/Desktop/1559 /day04/str.txt";
     2         
     3         NSError * a;
     4         
     5         NSString * str = [[NSString alloc] initWithContentsOfFile:path encoding:NSUTF8StringEncoding error:&a];
     6         
     7         if (a == nil) {
     8             NSLog(@"读入成功 %@",str);
     9         } else {
    10             NSLog(@"读入失败 %@",a);
    11         }

     

    5. 可变字符串

      5.1创建可变字符串

    1         // 1 创建可变字符串
    2         NSMutableString * muStr = [[NSMutableString alloc] initWithString:@"one"];
    3         
    4         NSMutableString * muStr2 = [[NSMutableString alloc] init];
    5         
    6         NSString * str = [[NSString alloc] init];
    7         NSLog(@"before set:%@",muStr2);

      5.2 set方法

    1         // 1 重置字符串
    2         [muStr2 setString:@"abc"];
    3         NSLog(@"%@",muStr2);
    4         NSMutableString * muStr3 = @"two";
    5         NSLog(@"%@",muStr3);

      5.3 追加字符串

        appendString   appendFormat

    1         [muStr2 appendString:@"def"];
    2         NSLog(@"%@",muStr2);
    3 //        int count = 6;
    4         [muStr2 appendFormat:@"是%lu个字符",[muStr2 length]];
    5         
    6         NSLog(@"%@",muStr2);

      5.4 插入字符串  

        在index处插入 

    1             NSMutableString * muStr4 = [[NSMutableString alloc] initWithString:@"two"];
    2             
    3             [muStr4 insertString:@"abc" atIndex:1];
    4             NSLog(@"%@",muStr4);

      5.5 删除字符串

        删除起始index为2 长度为2的字符串

    1             NSRange range = {2,2};
    2             [muStr4 deleteCharactersInRange:range];
    3             NSLog(@"%@",muStr4);

     

  • 相关阅读:
    【案例】ora600
    Oracle 10046 event
    Oracle redo与undo浅析
    BUFFER CACHE和SHARED POOL原理
    oracle体系结构基础
    Oracle-buffer cache、shared pool
    获取oracle数据库对象定义
    ORA-20011
    expdp/impdp中NETWORK_LINK参数使用
    day03-Python基础
  • 原文地址:https://www.cnblogs.com/gwkiOS/p/4926604.html
Copyright © 2020-2023  润新知