黑马程序员------Objective-C------NSString常用方法总结

------ Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------


字符串大小写转换

[objc]  view plain copy
  1. NSString *str = @"ChengDu";  
  2.   
  3.    
  4.   
  5. // 转成大写 输出:CHENGDU  
  6.   
  7.     NSLog(@"大写:%@", [str uppercaseString]);  
  8.   
  9.    
  10.   
  11. // 转成小写 输出:chengdu  
  12.   
  13.     NSLog(@"小写:%@", [str lowercaseString]);  
  14.   
  15.    
  16.   
  17. // 首字母变大写 输出:Chengdu  
  18.   
  19.     NSLog(@"首字母变大写:%@", [@"chengDu" capitalizedString]);  


 

字符串的比较  

[objc]  view plain copy
  1. // 检测两个字符串内容是否相同  
  2.   
  3.     BOOL result = [@"abc" isEqualToString:@"abc"];  
  4.     NSLog(@"%i", result); // 输出:1  
  5.       
  6.     // 逐字符地进行比较两个字符串的大小  
  7.     // NSOrderedAscending 左边 < 右边  
  8.     // NSOrderedSame 相同  
  9.     // NSOrderedDescending 左边 > 右边  
  10.     NSComparisonResult result2 = [@"abc" compare:@"Abc"];  
  11.     if (result2 == NSOrderedAscending) {  
  12.         NSLog(@"左边 < 右边");  
  13.     } else if (result2 == NSOrderedDescending) {  
  14.         NSLog(@"左边 > 右边");  
  15.     } else if (result2 == NSOrderedSame) {  
  16.         NSLog(@"左边 = 右边");  
  17.     }  
  18.   
  19.   
  20.     // 忽略大小写进行比较,其他的和compare一致  
  21.     [@"abc" caseInsensitiveCompare:@"Abc"];   

 

字符串的搜索

[objc]  view plain copy
  1. NSString *str2 = @"123456456.txt";  
  2.   
  3. NSLog(@"是否以22开头:%i", [str2 hasPrefix:@"22"]); // 输出:0  
  4. NSLog(@"是否以txt结尾:%i", [str2 hasSuffix:@"txt"]); // 输出:1  
  5.   
  6. NSRange range = [str2 rangeOfString:@"456"];  
  7. if (range.location == NSNotFound) { // 或者 range.length == 0;  
  8.     NSLog(@"不能找到");  
  9. else {  
  10.     NSLog(@"找到的范围是:%@", NSStringFromRange(range)); // 输出:{3,3}  
  11. }  
  12.   
  13. // 从尾部开始搜搜字符串  
  14. range = [str2 rangeOfString:@"456" options:NSBackwardsSearch];  
  15. NSLog(@"找到的范围是:%@", NSStringFromRange(range)); // 输出:{6,3}  
  16.   
  17. // 指定范围进行搜索  
  18. //[str rangeOfString:<#(NSString *)#> options:<#(NSStringCompareOptions)#> range:<#(NSRange)#>];  


 

字符串的截取  

[objc]  view plain copy
  1. NSString *str3 = @"123456";  
  2.   
  3.       
  4.     // 从索引3开始截取到尾部(包括索引3)  
  5.     NSLog(@"%@", [str3 substringFromIndex:3]); // 输出:465  
  6.       
  7.     // 从头部开始截取到索引3之前(不包括索引3)  
  8.     NSLog(@"%@", [str3 substringToIndex:3]); // 输出:123  
  9.       
  10.     // 指定范围进行截取  
  11.     NSRange range1 = NSMakeRange(23);  
  12.     NSLog(@"%@", [str3 substringWithRange:range1]); // 输出:345  
  13.       
  14.     // 用指定字符分割字符串  
  15.     NSString *str4 = @"1-2-3-4-5";  
  16.     NSArray *array = [str4 componentsSeparatedByString:@"-"];  
  17.     NSLog(@"%@", array); // 输出:(1,2,3,4,5) 就是打印数组那种格式  

 

与路径相关

[objc]  view plain copy
  1. // 快速创建一个自动释放的数组,把三个字符串对象添加进去  
  2.   
  3.     NSMutableArray *components = [NSMutableArray array];  
  4.     [components addObject:@"Users"];  
  5.     [components addObject:@"Lvxing"];  
  6.     [components addObject:@"Desktop"];  
  7.       
  8.   
  9. // 将数组中的所有字符拼接成一个路径  
  10.   
  11.     NSString *path = [NSString pathWithComponents:components];  
  12.     NSLog(@"%@", path);  
  13.       
  14.     // 将路径分解成一个数组  
  15.     NSArray *cmps = [path pathComponents];  
  16.     NSLog(@"%@", cmps); // 输出:(Users,Lvxing,Desktop)  
  17.   
  18.       
  19.     // 判断是否为绝对路径(依据是前面有无/)  
  20.     path = @"/Users/lvxing/Desktop/untitled folder/随堂练习/Foundation-NSString常用方法";  
  21.     NSLog(@"%i", [path isAbsolutePath]); // 输出:1  
  22.       
  23.     // 最后一个目录  
  24.     NSLog(@"最后一个目录:%@", [path lastPathComponent]);  
  25.       
  26.   
  27. // 删除最后一个目录 字符串path结尾变成随堂练习  
  28.   
  29.     NSLog(@"%@", [path stringByDeletingLastPathComponent]);  
  30.       
  31.   
  32. // 在最后面拼接一个目录 会将abc拼接在字符串path后面  
  33.   
  34.     NSLog(@"%@", [path stringByAppendingPathComponent:@"abc"]);  

    

拓展名处理 

[objc]  view plain copy
  1. // 依据是.  
  2. NSString *str5 = @"/Users/lvxing/Desktop/test.txt";  
  3. NSLog(@"%@", [str5 pathExtension]); // 输出:txt  
  4.   
  5. // 删除拓展名 结尾变成 test  
  6. NSLog(@"%@", [str5 stringByDeletingPathExtension]);  
  7.   
  8. // 添加拓展名  
  9. NSLog(@"%@", [@"abc" stringByAppendingPathExtension:@"mp3"]); // 输出:abc.mp3  

    

其他用法

[objc]  view plain copy
  1. // 把字符串数字转成数字  
  2. NSString *str6 = @"12";  
  3. int a = [str6 intValue];  
  4. NSLog(@"%i", a); // 输出:12  
  5.   
  6. // 计算字数,不是计算字符数  
  7. NSLog(@"length = %lu", [@"我是字符串123" length]); // 输出:length = 8  
  8.   
  9.   
  10. // 取出对应字符  
  11. unichar c = [@"abc" characterAtIndex:0];  
  12. NSLog(@"%c", c); // 输出:a  
  13.   
  14. // 返回C语言中的字符串  
  15. const charchar *s = [@"abc" UTF8String];  
  16. NSLog(@"%s", s); // 输出:abc  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值