黑马程序员技术交流社区

标题: NSString常用的几个类方法和对象方法(整理收集) [打印本页]

作者: 梦里花落知多少s    时间: 2016-9-28 18:06
标题: NSString常用的几个类方法和对象方法(整理收集)
1.     NSString常用的类方法!


     1) + (instancetype)stringWithUTF8String:(constchar *)nullTerminatedCString;
     instancetype 作为返回值 代表返回的是当前这个类的对象
     这个方法的作用:
          将C语言你的字符串转换为OC字符串对象!
     例:
          char *str = “Jack”;
          NSString *str1 = [NSString stringWithUTF8String: str]
     此时就是把C语言的字符串转换为了OC的字符串


     2) +
(instancetype)stringWithFormat:(NSString *)format, ...  
     使用频率 100分!
     这个方法的作用:
          拼接1个字符串对象,使用变量或者其他数据拼接成OC字符串!
     例:
          int age = 19;
          NSString *name = @“小漠”;
          // 需求:
          // 让字符串变为:
          // @“大家好,我叫XX,我的年龄是XX”
          NSString *str = [NSString stringWithFormat : @“大家好,我叫%@,我今年%d岁了!”,name,age];

     
2.     NSString常用的对象方法!
        
     1) @property (readonly) NSUInteger length;
          length 对象方法
          作用:为了得到OC字符串的长度
          返回值为 NSUInteger 其实就是 unsigned long 类型,因为它是用typedef起的别名而已。
          得到的这个返回值,就是字符串字符的个数。而且也可以查出中文的个数。

    例://     计算这个字符串的长度
          NSString *str = @“英雄联盟”;
          NSUInteger len = [str length];
     —> len = 4;


     2) - (unichar)characterAtIndex:(NSUInteger)index;
          作用:得到字符串中指定下标的字符
          返回值是 unichar 其实就是 unsinged short 占据两个字节!

    例://     找出字符串中的某个元素
          NSString *str = @“英雄联盟”;
          unichar ch = [str characterAtIndex:2];
          NSLog(@“%C”,ch);
     输出 unichar 类型的数据,用%C来占位输出!

     —> ch = 雄


     3) - (BOOL)isEqualToString:(NSString *)aString;
          作用:判断两个字符串的内容是否相同!

     例:// 判断两个字符串内容是否相同
          NSString *str1 = @“Jack”;
          NSString *str2 = [NSString stringWithFormat : @“Jack”];
         if( [str1 isEqualToString: str2] )
          {
               NSLog(@“yes 他们是相等的”);
           }
          else
          {
               NSLog(@“no 他们是不相等的”);
          }

          —> yes 他们是相等的


     4) - (NSComparisonResult)compare:(NSString *)string;
          作用:比较两个字符串的大小!
     例:// 比较两个字符串的大小
          NSString *str1 = @“Jack”;
          NSString *str2 = @“Rose”;
          NSComparisonResult res = [str1 compare: str2];
          也可以用int类型来接收,因为返回值是 long 类型的枚举
          返回值如果是 -1 说明 前一个字符串 比 后一个字符串小
          返回值如果是 0 说明 前一个字符串 等于 后一个字符串
          返回值如果是 1 说明 前一个字符串 比 后一个字符串大





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2