NSString、NSMutableString
来源:互联网 发布:aegisub for mac教程 编辑:程序博客网 时间:2024/05/04 05:32
Objective-C里核心的处理字符串的类就是NSString和NSMutableString这两个类,这两个类完成了Objective-C中字符串大部分功能的处理。这两个类的最主要的区别是NSString创建赋值后不能动态修改长度和内容,除非给重新赋值。而NSMutableString类似与链表的,在创建赋值后可以进行修改长度,插入,删除等操作。
NSString创建
1、创建常量字符串
NSString * ConstString = @"我是常量字符串";
2、用类方法创建字符串
NSString *classString = [NSStringstringWithFormat:@"我是类方法创建的字符串"];
3、用实例方法创建字符串
NSString *instanceString = [[NSStringalloc]initWithString:@"我是实例方法创建的字符串"];
4、通过c字符串创建字符串
char * cString = "我是c字符串";
NSString *cAllocString = [[NSStringalloc]initWithCString:cString];
5、通过文件创建字符串
NSString * path = [[NSBundlemainBundle]pathForResource:@"string.txt"ofType:nil];
NSString *fileString = [[NSStringalloc]initWithContentsOfFile:pathencoding:NSUTF8StringEncoding error:nil];
NSString写入文件
NSString *astring = [[NSStringalloc] initWithString:@"This is a String!"];
NSLog(@"astring:%@",astring);
NSString *path =@"astring.text";
[astring writeToFile: path atomically: YES]; //将string写入文件
获取NSString的长度
NSString * bString = [NSStringstringWithFormat:@"I am a String."];
NSInteger length = [bStringlength];
NSLog(@"%@的长度为:%i",bString,length);
组合String
NSString * a1String = [NSStringstringWithFormat:@"I am a1String"];
NSString * a2String = [NSStringstringWithFormat:@"I am a2String"];
NSString * cString = [a1String stringByAppendingFormat:a2String];
NSString * b1String = [NSStringstringWithFormat:@"I am b1String"];
NSString * b2String = [NSStringstringWithFormat:@"I am b2String"];
NSString * dString = [b1StringstringByAppendingString:b2String];
判断开头结尾
NSMutableString
NSLog(@"\n a: %@",a);
[a
[a
判断字符串是否相等
isEqualToString:
改变大小写:
lowercaseString、uppercaseString
获取字符串存储的数字值:
doubleValue、floatValue、intValue、integerValue、longLongValue、boolValue
字符串比较:(考虑大小写)
NSString *astring01 = @"This is a String!"; NSString *astring02 = @"This is a String!"; BOOL result = [astring01 compare:astring02] == NSOrderedSame; //NSOrderedSame判断两者内容是否相同 NSLog(@"result:%d",result); //NSString *astring01 = @"This is a String!"; NSString *astring02 = @"this is a String!"; BOOL result = [astring01 compare:astring02] == NSOrderedAscending; //NSOrderedAscending判断两对象值的大小(按字母顺序进行比较,astring02大于astring01为真) NSLog(@"result:%d",result);//NSString *astring01 = @"this is a String!"; NSString *astring02 = @"This is a String!"; BOOL result = [astring01 compare:astring02] == NSOrderedDescending; //NSOrderedDescending判断两对象值的大小(按字母顺序进行比较,astring02小于astring01为真) NSLog(@"result:%d",result);
字符串比较(考虑大小写)
NSString *astring01 = @"this is a String!"; NSString *astring02 = @"This is a String!"; BOOL result = [astring01 caseInsensitiveCompare:astring02] == NSOrderedSame; //NSOrderedDescending判断两对象值的大小(按字母顺序进行比较,astring02小于astring01为真)NSLog(@"result:%d",result); //2.NSString *astring01 = @"this is a String!"; NSString *astring02 = @"This is a String!"; BOOL result = [astring01 compare:astring02 options:NSCaseInsensitiveSearch | NSNumericSearch] == NSOrderedSame; //NSCaseInsensitiveSearch:不区分大小写比较 NSLiteralSearch:进行完全比较,区分大小写 NSNumericSearch:比较字符串的字符个数,而不是字符值。 NSLog(@"result:%d",result);
获取子字符串:
-substringToIndex: 从字符串的开头一直截取到指定的位置,但不包括该位置的字符
-substringFromIndex: 以指定位置开始(包括指定位置的字符),并包括之后的全部字符
-substringWithRange: //按照所给出的位置,长度,任意地从字符串中截取子串
插入字符串:
NSMutableString *String1 = [[NSMutableString alloc] initWithString:@"This is a NSMutableString"]; [String1 insertString:@"Hi! " atIndex:0];
- NSString NSMutableString
- NSString & NSMutableString
- NSString/NSMutableString
- NSString、NSMutableString
- NSString NSMutableString
- NSString,NSMutableString
- NSString/NSMutableString
- NSString&NSMutableString
- NSString/NSMutableString
- NSString NSMutableString
- NSString NSMutableString 截取
- NSString,nsmutablestring,nsset,nsdictionary
- NSString 和 NSMutableString
- NSString / NSMutableString 字符串处理
- ObjectiveC - NSString & NSMutableString
- NSString与NSMutableString用法
- NSMutableString 转换NSString
- NSString/NSMutableString常用函数
- mysql中修改表结构alter命令的用法
- Apache及Tomcat安装及配置说明
- 第十七周 用指针做形参求字符串的长度
- 改善android性能工具篇【zipalign】
- 软件工程之系统建模篇【开卷有益】
- NSString、NSMutableString
- javaSE-IO补充-编码补充
- mysql为用户赋予show databases权限
- LogBack——LogBack在项目(Web或Java)中的应用
- Tomcat绿色版本安装
- paip.提升用户体验--提升java的热部署热更新能力
- Robust Buffered Reading
- 小白逛公园 --线段树
- java正则表达式非捕获组详解