Oc继承和多态 复合

OC有单独的字符串类NSString(字符串对象分为可变和不可变字符串,在使用一个字符串对象之前,首先是创建以及初始化该对象)
   typedef struct_NSRange{
             NSUInteger location; //起始位置
            NSUInteger length;    //长度
      }NSRange;
工厂方法类方法用来产生新对象
创建字符串
a  NSString *string = @“字符串的内容”;
b NSString *string = [NSString new];
c +(id)stringWithString:(NSString *)aString
d +(id)stringFormat:(NSString *)format,…… 

获取字符串长度
-(unsigned int)length;
eg:   unsigned long len = [string length];

字符串是否相等比较
比较两个字符串的指针 ==
比较两个字符串的内容 -(BOOL)isEqualToString:(NSString *)aString; 
  字符串的大小比较
eg:  [字符串1 compare:字符串2]
eg: [字符串1  compare:字符串2  options:____]
     NSCaseInsensitiveSearch:不区分大小字符,以首字母为主
     NSLiteralSearch:区分大小字符
     NSNumericSearch:比较字符个数
        NSString *string3 = @"Hello";
        NSString *string4 = @"hello";
        if ([string3 compare:string4 options:NSCaseInsensitiveSearch|NSNumericSearch] == NSOrderedSame) {
           NSLog(@"12121345”);      //不区分大小写字符字符串的个数比较  ==判断真假
        }
字符串的拼接
NSString *string = @“I love”;
NSString *newString = [string stringByAppendingString:@“  iphonge”]; //注意空格
NSString *newStr = [newString stringByAppendingFormat:@“%dS! “, 5];
    结果:  I love iPhone5S

字符串的查找及截取
查找
       NSString *fileName = @"ios-45.doc”;
       NSRange range = [fileName rangeOfString:@“45”]; //返回结果range.location为4, range.length为2
        if ([fileName hasPrefix:@"ios"]) {  //判断字符串是否以iOS开头
              NSLog(@"本文件是ios相关的文件”); 
            }
       if([fileName hasSuffix:@".doc"]){ //判断字符串是否以.doc结尾
             NSLog(@"这是一个word文档”);
           }
截取
     NSString *fileName = @"ios_45.doc”;
     char c = [fileName characterAtIndex:2];
     NSString *to = [fileName substringToIndex:5]; //头atIndex减 (-1)
     NSString *from = [fileName substringFromIndex:5]; //尾atIndex                                            NSString *range = [fileName substringWithRange:NSMakeRange(3,5)];
        NSLog(@"c:%c", c);
        NSLog(@"to:%@", to);
        NSLog(@"from:%@",from);
        NSLog(@"range:%@",range);
    //结果   c:s
      to:ios_4
      from:5.doc
      range:_45.d
字符串的转换函数
  获取数据
     - (double)doubleValue; ==float,int
     eg: [@“123” intValue];   //只能读取个是数字的联系的数字,不联系就断开不读
  大小写转换
      -(NSString *)uppercaseString; ==lowercaseString,capitalizedString(首个大写,其余小写)
     eg:[@“___” uppercaseString];
字符串的替换
-(NSString *)stringByReplacingOccurrencesOfString:(NSString *)targetwithString:(NSString *)replacement:
//target替换replacement
-(NSString *)stringByReplacingCharactersInRange:NSMakeRange(int, int) withString:(NSString *)replacement:
//range范围内的内容替换replacement
-(NSArray *)componentsSeparatedByString:(NSString *)separator:
//以separator为分隔符,将原字符的内容进行分割,分割得到的结果放到一个数组里,作为返回值

 可变的字符串 NSMutableString
-(id)stringWithCapacity:(unsigned long)capacity; 
//capacity只是一个初始值,系统会根据这个大小预分配内存

拼接
  -(void)appendString:(NSString *)string;
eg:[_可变字符__ appendString  (NSString *)string];
  -(void)appendFormat:(NSString *)format,……..;
eg:[_可变字符___ appendFormat @“%d”,int];
删除
 -(void)deleteCharactersInRange:(NSRange)range;
eg:NSRange range = [(NSString *)string rangeOfString:(NSString *)string]; //删除上面有的字符,注意空字符
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值