NSString 常用方法学习 野性酷女 2022-08-05 14:27 113阅读 0赞 </pre><p style="margin-top: 0px; margin-bottom: 0px; font-size: 11px; font-family: Menlo; color: rgb(0, 132, 0);"><pre name="code" class="objc">// // NSStringStu.m // OC基础学习 // // Created by 麦子 on 15/3/10. // Copyright (c) 2015年 麦子. All rights reserved. // #import "NSStringStu.h" @implementation NSStringStu -(void) stuByNSString { NSLog(@"再一次开始学习IOS,麦子,加油!"); /*** 创建一个常量字符串 **/ NSString *string1 = @"这是一个产量字符串"; // 常量区 NSLog(@"string1->%@",string1); // 字符串的静态方法,都是已类名开始的。注意 /**** 创建一个空字符串 ***/ NSString *string2 = [[NSString alloc] init]; NSString *string3 = [NSString string]; NSLog(@"string2->%@",string2); NSLog(@"string3->%@",string3); /**** 快速创建一个字符串 */ // 这些都是常量区的 NSString *string4 = [[NSString alloc] initWithString:@"abc"]; NSLog(@"string4-%@",string4); NSString *string5 = [NSString stringWithString:@"abc"]; // 这个方法和 前面直接定义差不多,都放在常量区,而且工具提醒用这个方法多此一举。 NSLog(@"string5-%@",string5); /**** 创建一个格式化字符串*/ // 这些都是创建在堆区的 NSString *string6 = [[NSString alloc] initWithFormat: @"整数%d",10]; NSString *string7 = [NSString stringWithFormat:@"浮点型%.3f",10.56]; // 预留几位小数 NSLog(@"string6-%@----string7-%@",string6,string7); /**判断字符串的字符串的内容相等*/ if ([string4 isEqualToString:string5]) { NSLog(@"字符串内容相同"); }else{ NSLog(@"字符串内容不相同"); } /**判断对象是否相等*/ if (string4 == string5) { // 在这里 string4 和 string5都是在常量区的,所以指针都是指向同一个地址。 如果是堆区的就是不同的对象了。 NSLog(@"同一个对象"); }else{ NSLog(@"不同的对象"); } if (string6 == string7) { // 在堆区中,还是会指向同一个地址。 相同的这种形式创建的对象,还是true NSLog(@"同一个对象"); }else{ NSLog(@"不同对象"); } /***比较字符串的大小*/ NSString *string9 = [[NSString alloc] initWithFormat:@"z"]; NSString *string10 = [NSString stringWithFormat:@"abcdrg"]; NSComparisonResult result = [string9 caseInsensitiveCompare:string10]; NSLog(@"result--->%ld",result); if (1 == result) { NSLog(@"z 大于 a"); }else{ } /***求字符串的长度*/ NSLog(@"string9 长度%ld",[string10 length]); /***字符串大小写的转换*/ NSString *string12 = @"hello world"; NSLog(@"全部大写 %@",[string12 uppercaseString]); NSLog(@"全部小写 %@",[string12 lowercaseString]); NSLog(@"第一个字母大写%@",[string12 capitalizedString]); /****数据类型转换*/ NSString *string13 = @"-11.1"; // 换成 @“AAA” 不会抱错,只是都是 0 0。 NSLog(@"float %.3f",[string13 floatValue]); NSLog(@"boolea %d",[string13 boolValue]); /*****字符串转数组**/ NSString *string14 = @"123#456#789"; NSArray *array = [string14 componentsSeparatedByString:@"#"]; NSLog(@"array : %@",array); for (NSString *object in array) { NSLog(@"---%@",object); } /**字符串的截取*/ // 都是重新返回一个新的字符串 NSString *string15 = @"abcdefgh"; NSString *subString1 = [string15 substringToIndex:2]; NSString *subString2 = [string15 substringFromIndex:2]; NSLog(@"-->%@---%@",subString1,subString2); NSRange range; range.location = 2; range.length = [string15 length] - 4; NSString *subString3 = [string15 substringWithRange:range]; NSLog(@"---%@",subString3); /***字符串的拼接*/ NSString *string16 = @"maizi"; NSString *string17 = @"ios"; NSString *appString1 = [NSString stringWithFormat:@"%@%@",string16,string17]; NSLog(@"appString1---%@",appString1); NSString *appString2 = [string16 stringByAppendingString:string17]; // 这个更类似java方法 NSLog(@"appString2---%@",appString2); NSString *appString3 = [string16 stringByAppendingFormat:@"%@",string17]; NSLog(@"appString3--%@",appString3); /**字符串查询*/ NSString *link = @"_t_ok"; NSRange rangelink = [link rangeOfString:@"ok"]; NSLog(@"%ld",rangelink.location); if (rangelink.location != NSNotFound) { NSLog(@"这个字符存在"); } /***可变字符串,NSString的子类**/ NSMutableString *nsmutableStr = [NSMutableString stringWithFormat:@"aqiu_"]; [nsmutableStr insertString:@"ios" atIndex:5]; NSLog(@"%@",nsmutableStr); [nsmutableStr replaceCharactersInRange:NSMakeRange(0,3) withString:@"maizi"]; NSLog(@"%@",nsmutableStr); [nsmutableStr deleteCharactersInRange:NSMakeRange(0,3)]; NSLog(@"%@",nsmutableStr); } @end 运行结果如下: **2015-04-01 23:40:16.428 OC****基础学习****\[1525:70163\]****再一次开始学习****IOS****,麦子,加油!** **2015-04-01 23:40:16.429 OC****基础学习****\[1525:70163\] string1->****这是一个产量字符串** **2015-04-01 23:40:16.430 OC****基础学习****\[1525:70163\] string2->** **2015-04-01 23:40:16.430 OC****基础学习****\[1525:70163\] string3->** **2015-04-01 23:40:16.430 OC****基础学习****\[1525:70163\] string4-abc** **2015-04-01 23:40:16.430 OC****基础学习****\[1525:70163\] string5-abc** **2015-04-01 23:40:16.430 OC****基础学习****\[1525:70163\] string6-****整数****10----string7-****浮点型****10.560** **2015-04-01 23:40:16.430 OC****基础学习****\[1525:70163\]****字符串内容相同** **2015-04-01 23:40:16.430 OC****基础学习****\[1525:70163\]****同一个对象** **2015-04-01 23:40:16.431 OC****基础学习****\[1525:70163\]****不同对象** **2015-04-01 23:40:16.431 OC****基础学习****\[1525:70163\] result--->1** **2015-04-01 23:40:16.431 OC****基础学习****\[1525:70163\] z****大于** **a** **2015-04-01 23:40:16.431 OC****基础学习****\[1525:70163\] string9****长度****6** **2015-04-01 23:40:16.431 OC****基础学习****\[1525:70163\]****全部大写** **HELLO WORLD** **2015-04-01 23:40:16.431 OC****基础学习****\[1525:70163\]****全部小写** **hello world** **2015-04-01 23:40:16.431 OC****基础学习****\[1525:70163\]****第一个字母大写****Hello World** **2015-04-01 23:40:16.432 OC****基础学习****\[1525:70163\] float -11.100** **2015-04-01 23:40:16.446 OC****基础学习****\[1525:70163\] boolea 1** **2015-04-01 23:40:16.446 OC****基础学习****\[1525:70163\] array : (** ** 123,** ** 456,** ** 789** **)** **2015-04-01 23:40:16.446 OC****基础学习****\[1525:70163\] ---123** **2015-04-01 23:40:16.446 OC****基础学习****\[1525:70163\] ---456** **2015-04-01 23:40:16.447 OC****基础学习****\[1525:70163\] ---789** **2015-04-01 23:40:16.447 OC****基础学习****\[1525:70163\] -->ab---cdefgh** **2015-04-01 23:40:16.447 OC****基础学习****\[1525:70163\] ---cdef** **2015-04-01 23:40:16.447 OC****基础学习****\[1525:70163\] appString1---maiziios** **2015-04-01 23:40:16.447 OC****基础学习****\[1525:70163\] appString2---maiziios** **2015-04-01 23:40:16.447 OC****基础学习****\[1525:70163\] appString3--maiziios** **2015-04-01 23:40:16.448 OC****基础学习****\[1525:70163\] 3** **2015-04-01 23:40:16.448 OC****基础学习****\[1525:70163\]****这个字符存在** **2015-04-01 23:40:16.448 OC****基础学习****\[1525:70163\] aqiu\_ios** **2015-04-01 23:40:16.448 OC****基础学习****\[1525:70163\] maiziu\_ios** **2015-04-01 23:40:16.448 OC****基础学习****\[1525:70163\] ziu\_ios** Program ended with exit code: 0
还没有评论,来说两句吧...