Foundation-NSString
来源:互联网 发布:windows tasksche.exe 编辑:程序博客网 时间:2024/06/05 23:39
<span style="font-size:14px;">#import <Foundation/Foundation.h>int main(int argc, const char * argv[]) { @autoreleasepool { /* 构造字符串四种方式 NSString 不可变字符串 */ //1.初始化一个字符串对象 NSString *string1 = @"ibokanwisdom"; // NSString *string2 = [NSString stringWithString:@"ibokanwisdom"];// NSString *string3 = [[NSString alloc]initWithString:@"ibokanwisdom"]; //使用NSString的类方法来创建字符串,+ (instancetype)stringWithFormat:@"格式化标志符" NSString *string4 = [NSString stringWithFormat:@"%d,%.1f,hi guys",5,4.5]; NSLog(@"string4 = %@",string4); //对于用格式化方式来构造字符串实例来讲,其作用并不仅仅来构造一个字符串对象,它还可以用来做字符串拼接 NSString *string5 = @"Rick"; NSString *string6 = @"666"; NSString *string7 = [NSString stringWithFormat:@"%@%@",string5,string6]; NSLog(@"string7 = %@",string7); //从本地文件中读取字符串 NSString *path1 = @"/Users/liujiahao/Desktop/OC_04_02/OC_04_02/t.html"; NSStringEncoding encoding ;//NSUTF8StringEncoding(4) NSError *error ; NSString *string8 = [NSString stringWithContentsOfFile:path1 encoding:NSUTF8StringEncoding error:&error]; // NSLog(@"string8 = %@,error = %@",string8,error); //从网络读取字符串 NSURL *url = [NSURL URLWithString:@"http://www.baidu.com"];// NSString *string10 = [NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil]; // NSLog(@"string10 = %@",string10); //字符串的操作 NSString *string11 = @"你是逗比么,我都受不了你了"; //字符串属性 长度 length NSUInteger length = [string11 length]; NSLog(@"length = %lu",length); //字符串的截取 NSString *subString1 = [string11 substringToIndex:5]; //获取从字符串开头到字符串的 to 的位置的字符串内容,不包括to位置,从0算起 NSLog(@"subString1 = %@",subString1); NSString *subString2 = [string11 substringFromIndex:6]; //获取从字符串的from位置到结尾的字符串内容,包含from位置的字符 NSLog(@"subString2 = %@",subString2); NSString *subString3 = [string11 substringWithRange:NSMakeRange(2, 2)]; NSLog(@"subString3 = %@",subString3); //获取字符串中的某个字符 NSString *string12 = @"abcdefg"; char c = [string12 characterAtIndex:0]; //根据字符串中的位置 index 来得到一个字符,注意字符串的索引是从0开始的 NSLog(@"%c",c); //字符串比较,如何判断两个字符串是否相等 if (subString2 == subString3) { //内容和指针都相等时,才成立 NSLog(@"subString2 和 subString3 相等"); } else { NSLog(@"subString2 和 subString3 不相等"); } /* 如何才能让两个字符串的指针和内容都相等呢? P96 这里需要注意两个概念 : 浅拷贝 和 深拷贝 浅拷贝:是指源对象与拷贝对象共用一份实体,仅仅是引用的变量名称不同。 深拷贝:是指源对象与拷贝对象互相独立,其中任何一个对象的改动都不会对另一个对象造成影响。 在字符串中,[NSString stringWithString:] 方法是用于浅拷贝一个现有的字符串产生一个字符串 */ NSString *subString4 = [NSString stringWithString:subString2]; NSString *subString5 = [NSString stringWithFormat:@"%@",subString2]; if (subString2 == subString5) { //内容和指针都相等时,才成立 NSLog(@"subString2 和 subString5 相等"); } else { NSLog(@"subString2 和 subString5 不相等"); } //在实际开发过程中,我们通常只需要比较两个字符串的内容是否相等 if ([subString2 isEqualToString:subString5]) { NSLog(@"subString2 和 subString5 内容相等"); } else { NSLog(@"subString2 和 subString5 内容不相等"); } //比较两个字符串的大小 NSString *cmpString1 = @"hehehehehehe"; NSString *cmpString2 = @"hahahahahaha"; NSComparisonResult result = [cmpString1 compare:cmpString2]; switch (result) { case NSOrderedAscending: { NSLog(@"cmpString1 < cmpString2,升序"); } break; case NSOrderedSame: { NSLog(@"cmpString1 = cmpString2"); } break; case NSOrderedDescending: { NSLog(@"cmpString1 > cmpString2,降序"); } break; default: break; } //根据字符串拿到对应的range //NSString *string11 = @"你是逗比么,我都受不了你了"; NSRange range = [string11 rangeOfString:@"逗比"]; NSLog(@"%@",[NSValue valueWithRange:range]); //只输出第一个遇到该字符串的位置 及 该字符串的长度 NSRange range1 = [string11 rangeOfString:@"你"]; NSLog(@"%@",[NSValue valueWithRange:range1]); //判断字符串中是否有XX前缀 或 XX后缀 NSString *string13 = @"http://www.baidu.com"; if ([string13 hasPrefix:@"http://"]) { NSLog(@"含有此前缀"); } else { NSLog(@"不含有此前缀"); } //判断是否为 jpg 或 png 后缀 NSString *string14 = @"dkjfkj.jpg"; if ([string14 hasSuffix:@".jpg"] || [string14 hasSuffix:@"png"]) { NSLog(@"含有此后缀"); } else { NSLog(@"不含有此后缀"); } //字符串 拼接 NSString *string15 = @"www.baidu.com"; NSString *string16 = [@"http://" stringByAppendingString:string15]; //直接把两个字符串连接起来,调用者在前,传进来的字符串在后 NSLog(@"string16 = %@",string16); //http://img0.bdstatic.com/img/image/shouye/hbmnp003.jpg NSString *string17 = @"http://img0.bdstatic.com/img/image/shouye"; NSString *string18 = @"hbmnp003.jpg"; NSString *string19 = [string17 stringByAppendingFormat:@"/%@",string18]; //连接两个字符串,并且第二个字符串是按一定格式传进来的 NSLog(@"string19 = %@",string19); // NSString *string20 = [@"http://" stringByAppendingPathComponent:string18];// NSLog(@"string20 = %@",string20); NSString *string21 = @"http://img0.bdstatic.com/img/image/shouye/hbmnp003.jpg/ddddd";// NSString *string21 = @"a\\dd\\dfds\\s\\t"; NSString *string22 = [string21 lastPathComponent]; NSLog(@"string22 = %@",string22); NSString *theImageName = @"Rick"; NSString *string23 = @"png";// NSString *q = [theImageName stringByAppendingFormat:@".%@",string23];// NSLog(@"%@",q); NSString *string24 = [theImageName stringByAppendingPathExtension:string23]; NSLog(@"string24 = %@",string24); //字符串的其他常用方法 //1.字符串的转换函数 NSString *str1 = @"111add333"; int a1 = [str1 intValue]; float b1 = [str1 floatValue]; double c1 = [str1 doubleValue]; NSLog(@"%d",a1); //2.字符串大小写转换函数 NSString *str2 = @"aaabb"; NSString *str3 = [str2 uppercaseString]; //将字符全部改写成大写 NSLog(@"str3 = %@",str3); NSString *str4 = [str3 lowercaseString]; //将字符全部改写成小写 NSLog(@"str4 = %@",str4); NSString *str5 = [str2 capitalizedString]; //将首个字符改写成大写,其余的都小写 NSLog(@"str5 = %@",str5); //字符串的替换函数 NSString *str6 = [str2 stringByReplacingOccurrencesOfString:@"bb" withString:@"dd"]; NSLog(@"str6 = %@",str6); NSString *str7 = [str2 stringByReplacingCharactersInRange:NSMakeRange(1, 2) withString:@"cc"]; //将原字符串中range范围内的内容替换成replacement的内容 NSLog(@"str7 = %@",str7); NSString *str8 = @"aa-bb-cc-dd-ee"; NSArray *array = [str8 componentsSeparatedByString:@"-"]; //以separator为分隔符,将原字符串的内容进行分割,分割得到的结果放到一个数组里,作为返回值 NSLog(@"array = %@",array); } return 0;}</span>
0 0
- Foundation--NSString
- Foundation-NSString
- Foundation框架 NSString
- Foundation框架之NSString
- 【Foundation Frame】NSString
- Foundation框架中的NSString
- Foundation框架基础 NSString
- 20-NSString-foundation
- Foundation NSString常用方法
- Foundation框架中的NSString
- Foundation基础 --- NSString类
- Foundation-NSString类
- Foundation框架(NSString)
- Foundation-NSString比较
- Foundation框架- NSString用法
- Foundation框架-NSString
- Foundation之NSString
- ios开发foundation之NSString
- SLF4J 簡介
- Android 缩略图
- do{...}while(0)的意义和用法
- js代码判断浏览器种类IE、FF、Opera、Safari、chrome及版本
- hadoop框架详解视频
- Foundation-NSString
- c#wpf获取DataGrid值
- 自定义JSP中的Taglib标签之二带自定义属性的标签
- 黑马程序员_Eclipse与MyEclipse快捷键
- 1、在Windows 上安装Rabbit MQ 指南
- tomcat 不能识别maven web项目
- [MSSQL]服务器端压力过大导致SSMS异常
- Objective-C语言_数组练习题
- 鼠标点击电脑属性不显示为何 鼠标点击电脑属性不显示为何