个人整理------NSString基础

个人整理——NSString基础

NSString *str = @"i love you ,iOS";
//也可以通过alloc 和 init方法定义或者系统的便利构造器的方法创建字符串,但是系统更倾向于用字面量
NSString *str = [[NSString alloc]initWhitString:@"苹果"];
NSSstring *str = [NSString stringWithString:@"苹果"];
//字符串长度;
NSLog (@"%ld",str.length );
//通过指定的下标获取字符内容;
NSLog (@"%c",[str characterAtIndex:3] );
//如果字符串中有汉字的话就将c改写成C;
NSLog (@"%C",[str characterAtIndex:1]);
NSString中的各个方法:
   //NSString 创建的是不可变的字符串,当不可变字符串发生改变时会产生一个新的字符串,一般方法会返回NSString.
1.结构体:NSRange:
   NSRange:是一个结构体,提供两个成员变量,一个是location 起始位置 ,另一个是长度.
   NSRange range = {3 , 5};
   NSLog (@"%@", [str substringWithRange:range]);
   //打印结果为: ove y
2.判断是否相等
    (1) isEqualToString
    isEqualToString:判断两个字符串是否相等.
    NSString *str1 = @"ni hao";
    NSString *str2 = @"ni hao me ";
    NSLog (@"%d", [str1 isEqualToString: str2] );
    //打印结果为: 0; 两者不相等;
    //其中比较两个字符串的地址是否相同通过if方式判断;
    (2)compare
    compare:两者相比较,对应只有三个结果,一个是ASC升序,结果是-1    一个是same相同结果是0,降序DESC,结果是1,即前面的和后边的排序按ASC码表;
    NSString *str = @"nihao";
    NSString *newStr = @"buhao";
    NSLog(@"%ld",[str compare:newStr]);
    //打印结果是:1  n he b排序后是降序,在表中n比b大.
3.前(后)缀:hasprefix(hassuffix)
    hasprefix(hassuffix):判断是否有前(后)缀.
    NSString *str = @"liuxinqi";
    NSString *prefix = @"liu";
    NSLog (@"%d", [str hasprefix:prefix]);
    //打印结果为:1 表明有前缀,可以通过这个方法查找一个字符串的前几个或者后几个.
4.转化数据类型integerValue和stringWithFormat
    integerValue可以把字符串转化为基本数据类型
    NSString *strNum = @"12345p6";
    NSInteger num = [strNum integerValue];
    NSLog(@"%ld",num);
    stringWithFormat:方法可以把任意类型转化成字符串类型,可以进行拼接
   CGFloat g = 3.14 ;
   NSInteger a = 100;
   NSString *str = [NSString   stringWithFormat:@"%ld,%g,%@",a,g,@"liushanshan"];
   NSLog(@"%@",str);
5.转化大小写:uppercaseString,lowercaseString,capitalizedString
    uppercaseString 所有的字符都大写
    lowercaseString  所有的字符都小写
    capitalizedString 首字母大写,其他小写
    NSString *str = @"liu xin qi ";
    NSLog (@"%@',str.capitalizedString);
    //打印结果: Liu Xin Qi
6.字符串的拼接和替换
    (1).拼接
    NSString *str1 = @"liu";
    NSString *str2 =@"xinqi";
    NSString *newStr = [str1 stringByAppendingString:str2];
    NSlog(@"%@",newStr);
    //打印结果为:liuxinqi;
    (2).替换
    NSString *str = @"liu xin qi ";
    NSString *strNew = [str stringByReplacingOccurrencesOfString:@"liu" withString:@"gao"];
    NSLog (@"%@",strNew);
    //打印结果:gao xin qi 
 ```
 ```
NSMutableString 中的方法
    //NSMutableString 创建的是可变字符串,在方法上一般都是没有返回值的,都是对自身内容进行修改,再访问字符串时已经发生改变.
    1.创建方法同NSString
        NSMutableString *str = @"liuxinqi";
        NSMutableString *str2 = [[NSMutableString alloc]initWithString:@"liuxinqi"];
        NSMutableString *str = [NSMutableString stringWithString:@"liuxinqi"];
     2. 插入:insertString
         NSMutableString *str = [NSMutableString stringWithString:@"ni hao wo jiao liuxinqi"];
         [str insertString:@"刘鑫奇"atIndex:3];
         NSLog(@"%@",str);
         //其中atIndex是表示插入的起始位置.
      3.替换 replaceCharactersInRange
         NSMutableString *str = [NSMutableString stringWithString:@"ni hao wo jiao liuxinqi"];
        MSRange range = {10 , 5};
        [str replaceCharactersInRange:range  withString:@"好人"];
        NSLog(@"%@",str);
        //打印结果为:nihao ,wo 好人liuxinqi
        //其中10 表示的是插入的起始位置,二5代表的是你插入的字符串所占用的长度 可以是0,但是不能超过原本字符串的长度.
        4.拼接 appendFormat 
          NSString *str0 = @"nihao";
          NSString *strNew = [str0     stringByAppendingString:@"liuxinqi"];
          NSLog(@"%@",strNew);
          //打印结果:nihaoliuxinqi 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值