OC中字符串NSstring

 //NSString不可变字符串类型

        NSString*str0=@"IOS";

        

        //1,创建字符串的方法

        //1)实例方法

        NSString* str1=[[NSString alloc]initWithFormat:@"IOS"];

        //

        NSString*str2=[[NSString alloc]initWithFormat:@"ios:%d",12];

        

        NSString*str3=[[NSString alloc]initWithString:str0];

        

        NSLog(@"str1:%@ str2:%@ str3:%@",str1,str2,str3);

        

        //2),类方法

        NSString*str4=[NSString stringWithFormat:@"iii"];

        

        NSString*str5=[NSString stringWithFormat:@"ios:%d",90];

        

        NSString*str6=[NSString stringWithString:str4];

        

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

        

        //字符串操作

        //1),统计长度

        NSString*str=[NSString stringWithFormat:@"342435"];

        

        NSInteger changdu=[str length];

        NSLog(@"length:%lu",changdu);

        //(2),索引提取(字符串截取)

        NSString*str=@"123456789";

        NSString*substr1=[str substringFromIndex:3];//456789

        NSLog(@"%@",substr1);

        NSString*substr2=[str substringToIndex:3];//123

        NSLog(@"%@",substr2);

        

        NSRange range=NSMakeRange(3, 4);//4567从序号3开始截取4

        NSString*substr3=[str substringWithRange:range];

        NSLog(@"%@",substr3);

        

        

        

        //3),比较

        NSString*str1=[[NSString alloc]initWithFormat:@"IoS"];

        NSString*str2=[[NSString alloc]initWithFormat:@"ios"];

        BOOL mybool=[str1 isEqualToString:str2];

        NSLog(@"mybool is:%d",mybool);

        

        if ([str1 compare:str2]==NSOrderedSame) {

            NSLog(@"1111");

        }else if ([str1 compare:str2]==NSOrderedAscending){

            NSLog(@"2222");//表示str1大于str2

        }else {

            NSLog(@"3333");

        }

        

        if ([str1 caseInsensitiveCompare:str2]==NSOrderedAscending) {

            NSLog(@"str1<str2");

        }else if([str1 caseInsensitiveCompare:str2]==NSOrderedDescending){

            NSLog(@"str1>str2");

        }else{

            NSLog(@"==");//不区分大小写~~~~~~~~~~~~

        }

        

        

        

        //4)字符串查找

        NSString*str=[[NSString alloc]initWithFormat:@"哎呦不错哦"];

        NSString*substr=[[NSString alloc]initWithFormat:@""];

        

        NSRange range=[str rangeOfString:substr];

        if (range.location!=NSNotFound) {

            NSLog(@"%lu,%lu",(unsigned long)range.location,range.length);

        }else{

            NSLog(@"没找到");

        }

        

        

        

        //5)判断前后缀(2种)

        NSString*str1=[[NSString alloc]initWithFormat:@"Frankaddhouse"];

        if ([str1 hasPrefix:@"Fr"]) {

            NSLog(@"前缀是Fr");

        }else{

            NSLog(@"No");

        }

        

        if ([str1 hasSuffix:@"se"]) {

            NSLog(@"后缀是se");

        }else{

            NSLog(@"No");

        }

        

        

        

        //6),转换数字(4)


        NSString*str_int=@"2323";

        

        int strNumber=[str_int intValue];

        NSLog(@"%i",strNumber);

        

        

        

        //7),大小写转化(3种)

        NSString*str1=@"hello world";

        NSString*str2=[str1 uppercaseString];//小写变大写

        NSLog(@"str after up is:%@",str2);

        

        NSString*str3=[str2 lowercaseString];//大写变小写

        NSLog(@"str after lower is:%@",str3);

        

        NSString*str4=[str3 capitalizedString];//首字母大写,其他字母小写

        NSLog(@"str after up is:%@",str4);


        

        

        

        

        //8)字符串提取和NSRange

        NSString*str=@"123456789";

        NSRange range=NSMakeRange(3, 4);

        NSString*substr=[str substringWithRange:range];

        NSLog(@"%@",substr);

        

        

        //9),从本地读取文件内容

        NSString*path=[[NSString alloc]initWithContentsOfFile:@"/Users/Jessee/Desktop/heheda.c" encoding:NSUTF8StringEncoding error:nil];

        

        NSLog(@"%@",path);









可变字符串::::::::::::::::::::::::

        //可变字符串 : 不可变字符串

        //可变字符串是不可变字符串的子类

        

        

        //1,创建可变字符串(mutable可变的)

        //表示创建了一个长度10的可变字符串。

        //“长度表是让编译器先分配给字符串多大内存

        NSMutableString*str=[[NSMutableString alloc]initWithCapacity:10];

        

        str=[NSMutableString stringWithFormat:@"1234567890987654321"];

        NSLog(@"%@",str);


        //2,可变字符串的操作

        //1,增)

        

        

        NSMutableString *str1=[[NSMutableString alloc]initWithFormat:@"12345"];

        //添加字符串,从内存上,根本的改变了这个字符串    

        [str1 appendString:@"67890"];

        [str1 appendFormat:@"JQKA"];

        NSLog(@"%@",str1);

        

        [str1 insertString:@"王炸" atIndex:14];

        NSLog(@"%@",str1);

        

        //2,删)

        NSMutableString *str=[[NSMutableString alloc]initWithFormat:@"123456"];

        NSRange range=NSMakeRange(3, 2);

        

        [str deleteCharactersInRange:range];//可以删除可变字符串中的某一段

        NSLog(@"%@",str);

        

        

        //3,改)

        NSMutableString *str=[[NSMutableString alloc]initWithFormat:@"123456"];

        NSRange range=NSMakeRange(3, 2);

        [str replaceCharactersInRange:range withString:@"qq"];

        NSLog(@"%@",str);

        

        

        

        4,查)

        注释:参见不可变字符串


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值