ObjectiveC - NSString & NSMutableString

NSString 不可变字符串,OC中的字符串@开头,区分C中的字符串;

NSMutableString 可变字符串,类似Java中的StringBuffer,StringBuilder。

1.创建一个字符串的三种方式:

  NSString *string1 = @"abc";
  NSString *string2 = [[NSString alloc] initWithString:@"abc"];
  NSString *string3 = [NSString stringWithString:@"abc"];
2.创建一个格式化的字符串:

  // 用来把基本数据类型转换成字符串类型
  NSString *string6 = [[NSString alloc] initWithFormat:@"整数:%d", 10];
3.字符串 比较:

  NSString *string1 = [NSString stringWithFormat:@"123"];
  NSString *string2 = [NSString stringWithFormat:@"123"];
  // 比较字符串的内容
  if ([string1 isEqualToString:string2]) 
  {
      NSLog(@"same content");
  }
  else 
  {
      NSLog(@"different content");
  }
  // 比较内存地址
  if (string1 == string2) 
  {
      NSLog(@"same pointer");
  }
  else 
  {
      NSLog(@"different pointer");
  }
4.字符串 大小写转换

  NSString *string = @"HellO woRld";
  NSLog(@"大写 : %@", [string uppercaseString]);
  NSLog(@"小写 : %@", [string lowercaseString]);
  NSLog(@"首字大写 : %@", [string capitalizedString]);
5.字符串 切割(split)

  NSString *string = @"abc bcd xyz";
  NSArray *array = [string componentsSeparatedByString:@" "];
  NSLog(@"array : %@", array);
6.字符串 截取

  NSString *string = @"abcdefg";
  NSString *subString1 = [string substringToIndex:2];
  NSString *subString2 = [string substringFromIndex:2];
  NSLog(@"subString1 : %@", subString1); // ab
  NSLog(@"subString2 : %@", subString2); // cdef
  NSRange range = {4, 2}; //从第四个开始截取2个字符,index 0开始
  NSString *subString3 = [string substringWithRange:range];
  NSLog(@"subString3 :  %@", subString3);// ef
7.字符串 拼接的三种方式

  NSString *string1 = @"abc";
  NSString *string2 = @"xyz";
  NSString *appString1 = [[NSString alloc] initWithFormat:@"%@%@", string1, string2];
  NSString *appString2 = [string1 stringByAppendingFormat:@"%@", string2];
  NSString *appString3 = [string1 stringByAppendingString:string2];
  NSLog(@"appString 1 : %@", appString1);
  NSLog(@"appString 2 : %@", appString2);
  NSLog(@"appString 3 : %@", appString3);
8.字符串 查找
  NSString *link = @"abcdeftarget=_blankxyz";
  NSRange range1 = [link rangeOfString:@"target=_blank"];
  if (range1.location != NSNotFound) {
      NSLog(@"founded");
  }
9.NSMutableString 可变字符串的 插入,替换,删除
  NSMutableString *mutableString1 = [[NSMutableString alloc] initWithFormat:@"abc"];
  // 插入一个字符串
  [mutableString1 insertString:@"...xyz" atIndex:3];
  NSLog(@"mutalbeString1 : %@", mutableString1);
  // 替换
  [mutableString1 replaceCharactersInRange:NSMakeRange(0, 3) withString:@"efg"];
  NSLog(@"mutalbeString1 : %@", mutableString1);
  // 删除
  [mutableString1 deleteCharactersInRange:NSMakeRange(0, 3)];
  NSLog(@"mutalbeString1 : %@", mutableString1);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值