OC中字符串NSstring
2015-08-09 19:52
316 查看
//NSString不可变字符串类型
NSString*str0=@"IOS";
//1,创建字符串的方法
//(1)实例方法
NSString* str1=[[NSString
alloc]initWithFormat:@"IOS"];
//
NSString*str2=[[NSString
alloc]initWithFormat:@"ios:%d",12];
NSString*str3=[[NSString
alloc]initWithString:str0];
NSLog(@"str1:%@ str2:%@ str3:%@",str1,str2,str3);
//(2),类方法
NSString*str4=[NSString stringWithFormat:@"iii"];
NSString*str5=[NSString stringWithFormat:@"ios:%d",90];
NSString*str6=[NSString stringWithString:str4];
NSLog(@"str4:%@ str5:%@ str6%@",str4,str5,str6);
//字符串操作
//(1),统计长度
NSString*str=[NSString stringWithFormat:@"342435"];
NSInteger changdu=[str length];
NSLog(@"length:%lu",changdu);
//(2),索引提取(字符串截取)
NSString*str=@"123456789";
NSString*substr1=[str substringFromIndex:3];//456789
NSLog(@"%@",substr1);
NSString*substr2=[str substringToIndex:3];//123
NSLog(@"%@",substr2);
NSRange range=NSMakeRange(3,
4);//4567从序号3开始截取4个
NSString*substr3=[str substringWithRange:range];
NSLog(@"%@",substr3);
//(3),比较
NSString*str1=[[NSString alloc]initWithFormat:@"IoS"];
NSString*str2=[[NSString alloc]initWithFormat:@"ios"];
BOOL mybool=[str1 isEqualToString:str2];
NSLog(@"mybool is:%d",mybool);
if ([str1 compare:str2]==NSOrderedSame) {
NSLog(@"1111");
}else
if ([str1 compare:str2]==NSOrderedAscending){
NSLog(@"2222");//表示str1大于str2
}else {
NSLog(@"3333");
}
if ([str1 caseInsensitiveCompare:str2]==NSOrderedAscending) {
NSLog(@"str1<str2");
}else
if([str1 caseInsensitiveCompare:str2]==NSOrderedDescending){
NSLog(@"str1>str2");
}else{
NSLog(@"==");//不区分大小写~~~~~~~~~~~~
}
//(4)字符串查找
NSString*str=[[NSString alloc]initWithFormat:@"哎呦不错哦"];
NSString*substr=[[NSString alloc]initWithFormat:@"错"];
NSRange range=[str rangeOfString:substr];
if (range.location!=NSNotFound) {
NSLog(@"%lu,%lu",(unsigned
long)range.location,range.length);
}else{
NSLog(@"没找到");
}
//(5)判断前后缀(2种)
NSString*str1=[[NSString alloc]initWithFormat:@"Frankaddhouse"];
if ([str1 hasPrefix:@"Fr"]) {
NSLog(@"前缀是Fr哦");
}else{
NSLog(@"No");
}
if ([str1 hasSuffix:@"se"]) {
NSLog(@"后缀是se哦");
}else{
NSLog(@"No");
}
//(6),转换数字(4种)
NSString*str_int=@"2323";
int strNumber=[str_int intValue];
NSLog(@"%i",strNumber);
//(7),大小写转化(3种)
NSString*str1=@"hello world";
NSString*str2=[str1 uppercaseString];//小写变大写
NSLog(@"str after up is:%@",str2);
NSString*str3=[str2 lowercaseString];//大写变小写
NSLog(@"str after lower is:%@",str3);
NSString*str4=[str3 capitalizedString];//首字母大写,其他字母小写
NSLog(@"str after up is:%@",str4);
//(8)字符串提取和NSRange
NSString*str=@"123456789";
NSRange range=NSMakeRange(3,
4);
NSString*substr=[str substringWithRange:range];
NSLog(@"%@",substr);
//(9),从本地读取文件内容
NSString*path=[[NSString alloc]initWithContentsOfFile:@"/Users/Jessee/Desktop/heheda.c" encoding:NSUTF8StringEncoding error:nil];
NSLog(@"%@",path);
可变字符串::::::::::::::::::::::::
//可变字符串 :
不可变字符串
//可变字符串是不可变字符串的子类
//1,创建可变字符串(mutable可变的)
//表示创建了一个“长度”为10的可变字符串。
//“长度”表是让编译器先分配给字符串多大内存
NSMutableString*str=[[NSMutableString
alloc]initWithCapacity:10];
str=[NSMutableString
stringWithFormat:@"1234567890987654321"];
NSLog(@"%@",str);
//2,可变字符串的操作
//(1,增)
NSMutableString *str1=[[NSMutableString
alloc]initWithFormat:@"12345"];
//添加字符串,从内存上,根本的改变了这个字符串
[str1 appendString:@"67890"];
[str1 appendFormat:@"JQKA"];
NSLog(@"%@",str1);
[str1 insertString:@"王炸" atIndex:14];
NSLog(@"%@",str1);
//(2,删)
NSMutableString *str=[[NSMutableString alloc]initWithFormat:@"123456"];
NSRange range=NSMakeRange(3,
2);
[str deleteCharactersInRange:range];//可以删除可变字符串中的某一段
NSLog(@"%@",str);
//(3,改)
NSMutableString *str=[[NSMutableString alloc]initWithFormat:@"123456"];
NSRange range=NSMakeRange(3,
2);
[str replaceCharactersInRange:range withString:@"qq"];
NSLog(@"%@",str);
(4,查)
注释:参见不可变字符串
NSString*str0=@"IOS";
//1,创建字符串的方法
//(1)实例方法
NSString* str1=[[NSString
alloc]initWithFormat:@"IOS"];
//
NSString*str2=[[NSString
alloc]initWithFormat:@"ios:%d",12];
NSString*str3=[[NSString
alloc]initWithString:str0];
NSLog(@"str1:%@ str2:%@ str3:%@",str1,str2,str3);
//(2),类方法
NSString*str4=[NSString stringWithFormat:@"iii"];
NSString*str5=[NSString stringWithFormat:@"ios:%d",90];
NSString*str6=[NSString stringWithString:str4];
NSLog(@"str4:%@ str5:%@ str6%@",str4,str5,str6);
//字符串操作
//(1),统计长度
NSString*str=[NSString stringWithFormat:@"342435"];
NSInteger changdu=[str length];
NSLog(@"length:%lu",changdu);
//(2),索引提取(字符串截取)
NSString*str=@"123456789";
NSString*substr1=[str substringFromIndex:3];//456789
NSLog(@"%@",substr1);
NSString*substr2=[str substringToIndex:3];//123
NSLog(@"%@",substr2);
NSRange range=NSMakeRange(3,
4);//4567从序号3开始截取4个
NSString*substr3=[str substringWithRange:range];
NSLog(@"%@",substr3);
//(3),比较
NSString*str1=[[NSString alloc]initWithFormat:@"IoS"];
NSString*str2=[[NSString alloc]initWithFormat:@"ios"];
BOOL mybool=[str1 isEqualToString:str2];
NSLog(@"mybool is:%d",mybool);
if ([str1 compare:str2]==NSOrderedSame) {
NSLog(@"1111");
}else
if ([str1 compare:str2]==NSOrderedAscending){
NSLog(@"2222");//表示str1大于str2
}else {
NSLog(@"3333");
}
if ([str1 caseInsensitiveCompare:str2]==NSOrderedAscending) {
NSLog(@"str1<str2");
}else
if([str1 caseInsensitiveCompare:str2]==NSOrderedDescending){
NSLog(@"str1>str2");
}else{
NSLog(@"==");//不区分大小写~~~~~~~~~~~~
}
//(4)字符串查找
NSString*str=[[NSString alloc]initWithFormat:@"哎呦不错哦"];
NSString*substr=[[NSString alloc]initWithFormat:@"错"];
NSRange range=[str rangeOfString:substr];
if (range.location!=NSNotFound) {
NSLog(@"%lu,%lu",(unsigned
long)range.location,range.length);
}else{
NSLog(@"没找到");
}
//(5)判断前后缀(2种)
NSString*str1=[[NSString alloc]initWithFormat:@"Frankaddhouse"];
if ([str1 hasPrefix:@"Fr"]) {
NSLog(@"前缀是Fr哦");
}else{
NSLog(@"No");
}
if ([str1 hasSuffix:@"se"]) {
NSLog(@"后缀是se哦");
}else{
NSLog(@"No");
}
//(6),转换数字(4种)
NSString*str_int=@"2323";
int strNumber=[str_int intValue];
NSLog(@"%i",strNumber);
//(7),大小写转化(3种)
NSString*str1=@"hello world";
NSString*str2=[str1 uppercaseString];//小写变大写
NSLog(@"str after up is:%@",str2);
NSString*str3=[str2 lowercaseString];//大写变小写
NSLog(@"str after lower is:%@",str3);
NSString*str4=[str3 capitalizedString];//首字母大写,其他字母小写
NSLog(@"str after up is:%@",str4);
//(8)字符串提取和NSRange
NSString*str=@"123456789";
NSRange range=NSMakeRange(3,
4);
NSString*substr=[str substringWithRange:range];
NSLog(@"%@",substr);
//(9),从本地读取文件内容
NSString*path=[[NSString alloc]initWithContentsOfFile:@"/Users/Jessee/Desktop/heheda.c" encoding:NSUTF8StringEncoding error:nil];
NSLog(@"%@",path);
可变字符串::::::::::::::::::::::::
//可变字符串 :
不可变字符串
//可变字符串是不可变字符串的子类
//1,创建可变字符串(mutable可变的)
//表示创建了一个“长度”为10的可变字符串。
//“长度”表是让编译器先分配给字符串多大内存
NSMutableString*str=[[NSMutableString
alloc]initWithCapacity:10];
str=[NSMutableString
stringWithFormat:@"1234567890987654321"];
NSLog(@"%@",str);
//2,可变字符串的操作
//(1,增)
NSMutableString *str1=[[NSMutableString
alloc]initWithFormat:@"12345"];
//添加字符串,从内存上,根本的改变了这个字符串
[str1 appendString:@"67890"];
[str1 appendFormat:@"JQKA"];
NSLog(@"%@",str1);
[str1 insertString:@"王炸" atIndex:14];
NSLog(@"%@",str1);
//(2,删)
NSMutableString *str=[[NSMutableString alloc]initWithFormat:@"123456"];
NSRange range=NSMakeRange(3,
2);
[str deleteCharactersInRange:range];//可以删除可变字符串中的某一段
NSLog(@"%@",str);
//(3,改)
NSMutableString *str=[[NSMutableString alloc]initWithFormat:@"123456"];
NSRange range=NSMakeRange(3,
2);
[str replaceCharactersInRange:range withString:@"qq"];
NSLog(@"%@",str);
(4,查)
注释:参见不可变字符串
相关文章推荐
- Moore's voting algorithm
- Swift学习笔记之数组(三)
- 高效算法——J 中途相遇法,求和
- D题(贪心)
- IDEA JVM参数
- hdu 2544 最短路
- QT 绘制 五角图案
- vs2010项目属性配置
- NYOJ 1230 聪明的班主任
- poj1201(贪心+树状数组)
- OC中字典
- 整理一下看过的图像识别的文章(人脸、车牌、验证码)
- Android-扩展BaseAdapter实现progressBar下载
- 学习计划,我希望这不会虎头蛇尾
- Java程序设计求出岁数
- Stripe
- ios警告与提示对话框
- HDU 2157 How many ways??
- Network Saboteur
- 熟人UML