NSString 和 NSMutableString常用功能

本文探讨了Objective-C与Swift两种编程语言在iOS开发领域的应用与区别,介绍了它们各自的特点、优势以及在实际项目中的使用场景。Objective-C作为iOS早期的主要开发语言,至今仍有一部分应用在使用;而Swift作为苹果推出的全新语言,以其安全性、易读性和高效性迅速获得了开发者们的青睐。文章还对比了两种语言在语法、性能和社区支持等方面的差异,并提供了在选择和迁移过程中的建议。
// 不可变字符串NSString,不可以进行增删改查
        
        // C语言方式定义一个字符串
        char *p ="hello word";
        NSLog(@"%s", p);
        
        // 直接定义一个字符串
        NSString *s = @"hello word";
        NSLog(@"%@", s);
        
        // 通过字符串地址生成
        NSString *str = [[NSString alloc]initWithString:s];
        NSLog(@"%@", str);
        
        // 通过c语言形式生成
        NSString *ste3 = [[NSString alloc]initWithUTF8String:p];
        NSLog(@"%@", ste3);
        
        // 通过各式符,拼接成一个字符串
        NSString *str4 = [[NSString alloc]initWithFormat:@"heheeh%d %c", 5, 'A'];
        NSLog(@"%@", str4);
        
        // 通过c语言方式生成临时字符串
        NSString *str5 = [NSString stringWithUTF8String:"hello word"];
        NSLog(@"%@", str5);
        
        // 生成可拼接的临时字符串
        NSString *str6 = [NSString stringWithFormat:@"%@ %d", @"dsds", 23];
        NSLog(@"%@", str6);
        
        // 生成临时字符串(传入的是地址)
        NSString *str7 = [NSString stringWithString:s];
        NSLog(@"%@", str7);
        
        // 两个字符串进行比较,大于是真,小于是假
        NSString *str8 = @"ahelloa";
        NSString *str9 = @"hello";
        BOOL ret = [str isEqualToString:str9];
        NSLog(@"%d", ret);
        
        // 两个字符串比较
        NSComparisonResult res =[str8 compare:str9];
        if (res == NSOrderedDescending) { // descend递减
            NSLog(@"str8 < str9");
        }else if (res == NSOrderedAscending)
        {
            NSLog(@"str8 > str9");
        }else if (res == NSOrderedSame){
            NSLog(@"str8 = str9");
        }
        
        NSString *str10 = @"I am a so bod man"; //1,定义一个字符串
        NSString *subStr = @"so";               //2,定义一个需要获取位置的字符串
        NSRange rang = [str10 rangeOfString:subStr]; // 3,获取当前字符串的位置
        NSLog(@"location:%lu lenght:%lu", rang.location, rang.length); // 4,打印出字符串的位置
        
        NSString *str11 = @"1234567890";
        //从str11 中提取从头到尾的6个字符串,返回到str12中(不包括第六个)生成新字符串ste
        NSString *str12 = [str11 substringToIndex:6];
        NSLog(@"str12:%@", str12);
       
        NSString *str13 = [str substringWithRange:rang];
        // NSString *str13 = [str substringWithRange:NSMakeRange(3, 4)];
        // 通过c的方式生成一个指定的字符串
        // 根据指定范围生成一个字符串
        NSLog(@"str13=%@", str13);
        //从第六个字符串到尾,生成一个新字符串,包括第六个
        NSString *str14 = [str substringFromIndex:6];
        NSLog(@"str3=%@", str14);
        
        // 可变字符串,NSMUtableString是继承与NSString 增加的功能有增删改查
        
        // NSMutableString *str = @"hello"; 是错误的
        NSMutableString *str = [[NSMutableString alloc]init];
        [str setString:@"hello"];
        [str setString:@"word"]; //替换了
        NSLog(@"str=%@", str);
        
        // 增,追加,插入
        [str appendString:@"123"];
        [str appendFormat:@"%c", 'D']; //追加一个字符
        [str insertString:@"XXXXX" atIndex:4];//插入一个字符在第四个字符处插入
        [str insertString:[NSString stringWithFormat:@"%d", -55] atIndex:7];
        
        // 字符串的删除
        NSLog(@"str=%@", str);
        [str deleteCharactersInRange:NSMakeRange(3, 7)];//删除这个范围的字符
        NSLog(@"str=%@", str);
        
        //字符串的修改
        [str replaceCharactersInRange:NSMakeRange(3, 2) withString:@"RRRRRRRRR"];
        //替换后的字符串长度可以改变
        NSLog(@"str=%@", str);
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值