OC -- 字符串

一.   字符串

       OC中字符串的格式:NSString *string =@"字符";

            * * *    字符串类分为两种

                      1⃣️  NSString:不可变在字符串

                            不能够修改字符串的内容,也就是说不能对字符串进行增删改查

                      2⃣️  NSMutableString:可变字符串

                             对象确定后,能够修改字符串内容,能够对字符串进行增删改查

         先说    NSString:不可变在字符串的所有

  

              1. 创建一个字符创常量

                   (1).  直接赋值

                         //通过直接赋值,创建一个字符串常量

                              NSString *str1 = @"字符串1"; 

                    (2).  通过初始化,便利构造

                            通过初始化方法和便利构造方法创建一个空字符串对象

                             NSString *str2 = [[NSString alloc]init];

                             NSString *str3 = [NSString string];

                              给空字符串对象赋值

                               str2 = @"字符串2";

                               str3 = @"字符串3";

                 2.  快速创建一个字符串

                       (1).通过带参数的init方法快速创建 

                              NSString *str4 =[[NSString alloc]initWithString:@"字符串4"];

                         (2).通过带参数的便利构造方法快速创建字符串

                              NSString *str5 = @"字符串";

                  3. 创建一个格式化的字符串

                      (1).通过带参数的便利构造方法创建格式化字符串,后面的格式,跟  NSlog括号内的一样

                           int a = 6;

                           NSString *str6 = [NSString stringWithFormat:@"字符串%d",a];

                            NSLog(@"字符串%d",a);

                            NSString *str7 = [[NSString alloc]initWithFormat:@"字符串%d",a];


                  4. 字符串的比较    比较:compare

                       (1).   区分大小写的比较:compare

                                NSString *str8 = @"ABC";

                                NSString *str9 = @"ab";

                                 NSComparisonResult resutl =  [str8 compare:str9];//resutl结果

                        (2).  不区分大小写的比较:caseInsensitiveCompare 

                             NSComparisonResult result1 = [str8 caseInsensitiveCompare:str9];

                         (3).  isEqualToString比较字符串对象的内容是否一样;==比较两个字符对象的内       存地址是否一样,用BOOL 接受

                              BOOL isEqual = [str8 isEqualToString:str9];

                     5.  字符串的转换

                            (1).  将字母转化为大写:uppercaseString

                                    NSString *str10  = @"aBcD";

                                     NSString *uppercaseTest  = [str10 uppercaseString];

                           (2).   将字母转化成小写:lowercaseString

                                     NSString *lowercaseTest = [str10 lowercaseString];

                             (3).   将首字母大写,后面小写:capitalizedString

                                     NSString *capitaTest = [str10 capitalizedString];

                                       [lowercaseTest isEqualToString:@""];

                        6.   字符串的截取与拼接

                                (1).   表示从头截取到哪里:substringToIndex

                                         NSString *str11  = @"hello iOS";

                                          NSString *substring  = [str11 substringFromIndex:5];

                                 (2).  表示从哪里开始到尾:substringFromIndex

                                       NSString *subsfrom = [str11 substringFromIndex:3];

                                (3).  表示按指定的范围截取:substringWithRange

                                      //NSRang 规定一个返回,locationd代表从哪里开始截取 length代表截取多长

                                          NSRange rang = {1,1};

                                         //表示按指定的范围截取

                                             NSString *subswith = [str11 substringWithRange:rang];

                                          //通过length获取到字符串的长度

                                              long strLeng = str11.length; 

                                               NSString *str12 = @"hello";

                                            //拼接字符串

                                                  NSString *appendStr = [str12 stringByAppendingString:@"你好%"];

                                                    int b = 12;

                                  (4).  格式化拼接字符串:stringByAppendingFormt

                                         NSString *formeAppend  = [str12 stringByAppendingFormat:@"你好%d",b];

                             7.   字符串转换数组 

                                     (1).用特定字符分割字符串:componentsSeparatedByString

                                           NSMutableString方法

                                            //字符串转数组

                                               NSString *str13 = @"哈哈    特别可爱";

                                            // 用特定字符串分割字符串 

                                                 NSArray *aryay = [str13 componentsSeparatedByString:@"吃饭"];


            NSMutableString:可变字符串


                 1.  增->使原字符改变

                      (1). 对自身进行修改:appendString

                            [str14 appendString:@"修改1"];

                      (2).  对自身进行格式化拼接:appendFormat

                               int c = 14;

                                [str14 appendFormat:@" %d",c];

                      (3).  在字符串的指定位置插入内容:insertString...atIndex 

                            [str14 insertString:@"" atIndex:3];

                2.  删->删除原字符串的某些内容

                     (1).  删除原字符串中指定区域的字符:deleteCharactersInRange  range指代删除内容范围

                              NSRange rang1 = {5,2};

                                [str14 deleteCharactersInRange:rang1];  

                 3.  改->修改原字符的某些内容

                      (1).  修改字符的内容:replaceCharactersInRange...withString

            range指代修改内容范围,withString后面加修改后的内容

                             NSRange rang2 = {6,5};

                               [str14 replaceCharactersInRange:rang2 withString:@"成功"];

                 4.  查->查找原字符串的字符

                      (1).  查找原字符串中是否有指定的字符:containsString  BOOL类型 接收

                              BOOL  isHeart = [str14 containsString:@""];


你可能感兴趣的:(OC -- 字符串)