• OC NSString类,课堂笔记


    不可变字符串NSString:

    //1.创建

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

      NSString* str2=[NSString stringWithString:str1];

    //创建空字符串

      NSString *str3=[NSString new];

      NSString* str4=[NSString string];

    //转换

    //基本数据类型->字符串

      NSInteger int1=75;

      CGFloat float1=-99.1;

      NSString* str5=[[NSString alloc]initWithFormat:@"%ld,%f",int1,float1];

      NSString *str6=[NSString stringWithFormat:@"%ld,%f",int1,float1];

      NSLog(@"%@,%@",str5,str6);

    //字符串->基本数据类型

      NSString * str7=@"11";

      NSInteger a=[str intValue];

      NSLog(@"%ld",a);

    //基本数据类型转换为对象

      NSInteger bb=22;

      NSNumber *aa=[NSNumber numberWithLong:bb];

      NSLog(@"%@",aa);  

    //字符串的长度

      NSUInteger length=[str6 length];

    //字符串的比较

      NSString * str9=@"abcDef342";

      NSString* str10=@"abCDef41";

      NSComparisonResult result1=[str9 compare:str10];

      NSLog(@"%ld",result1);//放回表示1表示升序,0相等,-1降序

    //不区分大小写比较

      NSComparisonResult result2=[str9 caseInsensitiveCompare:str10];

      NSLog("%@",result2);

    //按照特定条件

      NSString* str11=@"text1";

      NSString *str12=@"text2";

      //不区分大小写

      NSComparisonResult result3=[str11 compare: str12 options:NSCaseInsensitiveSearch];

      NSComparisonResult result4=[str11 compar:str12 options:NSCaseInsensitiveSeach|NSNumericSeach];

      // options后面常用常数

      //NSCaseInsensitiveSearch:不区分大小写

      //NSLiteralSearch:进行完全比较,区分大小写

      //NSNumericSeach:比较字符串的字符个数,而不是字符值

      if([str11 isEqualToString : str12]){

      NSLog(@"字符内容相同");

      }

      if(str11==str12){

      NSLog(@"字符串指针相同");

      }

    //字符串的查找

    //在一个字符串里查找一个字符子串

      NSString* str16=@"abcdef123_fafaf";

      NSRange range1=[str16 rangeOfString:@"ef12"];

      NSLog(@"%@",[NSValue valueWithRange:range1]);

      //返回一个结构体,标记该字符子串的位置

      NSRange range2=[str16 rangeOfString:@"qqqq"];

      NSLog(@"%@",[NSValue valueWithRange:range2]);

      //如果查找不到,返回range的location的值是一个很大的值

      if(range2.location==NSNotFound){

      NSLog(@"在str16里面没有找到qqqq");

      }

    //判断字符串开头、结尾

      NSString* str17=@"xxxxx0123.mkv";

      if([str17 hasPrefix:@"xxx"]){

      NSLog(@"str17是以xxx开头");}

      if([str17 hasSuffix:@".mkv"]){

      NSLog(@"str17是以.mkv开头");}

    //大小写转换

      NSString *str18=@"etheritusefhjwhq";

    //不可变字符串只能把转换后的字符串交给一个新的字符串,自身没有变

      NSString* str19=[str18 uppercaseString];

    //字符串的拼接

      NSString* str20=@"abcd";

      NSString* str21=@"efgh";

      NSString* str22=[str20 stringByAppendingString:str21];

    //字符串的替换

      NSString *str23=@"My computer";

      //把指定内容替换成其他内容

      NSString *str24=[str23 stringByReplacingOccurrencesOfString:@"computer" withString:@"PC"];

    //指定范围的字符串替换成其他内容

      NSString* str25=[str23 stringBuReplacingCharatersInRange:NSMakeRange(0,3) winthString:@"我的"];

      NSLog(@"str25:%@",str25);

    //提取、截取

      NSString *str26=@"Canton Fair";

      unichar uc1=[str26 characterAtIndex:3];

      NSLog(@"%c",uc1];

    //从字符串中截取某些范围的字符

      NSString* str27=[str26 substringFromIdex:5];//包括第5个字符

      NSString * str28=[str26 substringToIndex:5];//不包括第五个字符

      NSString *str29=[str26 substringWithRange:NSMakeRange(7,4);

    //拆分字符串

      NSString *str30=@"300-4555-34-222";

      NSArray* sepon=[str30 componentsSeparatedByString:@"-"];

      NSLog(@"sepon:%@",sepon]);

    //可变字符串NSMutebleString

    //创建

      NSMutableString *mstr1=[NSMutableString new];

      NSMutableString *mstr2=[[NSMutableString all]initWithFormat:@"%d",12312];

      NSMutableString* mstr3=[NSMubtableString stringWithFormat:mstr2];

      NSMutableString *mstr4=[[NSMutableString alloc]initWithCapacity:5];

    //可变字符串是不可变字符串的子类,所以可变字符串可以调用不可变字符串的方法

  • 相关阅读:
    AtCoder Grand Contest 032-B
    AtCoder Grand Contest 032 A
    高橋君とカード / Tak and Cards AtCoder
    Divisibility by 25 CodeForces
    Fire Again CodeForces
    cctype函数 (字符类型判断)
    蓝桥杯--- 历届试题 国王的烦恼 (并查集)
    蓝桥杯---买不到的数目
    算法课(经典贪心)
    完美的数字
  • 原文地址:https://www.cnblogs.com/mojiewei/p/4789907.html
Copyright © 2020-2023  润新知