码迷,mamicode.com
首页 > 其他好文 > 详细

我的OC成长之路(复习之字符串)

时间:2016-07-31 22:12:21      阅读:140      评论:0      收藏:0      [点我收藏+]

标签:

注意点:

1.fromIndex,toIndex,withRange 

从哪个位置其到尾,从开头到哪个位置,从哪到哪之间的位置。

不过,这里需要注意的是,这个index是数组的下标的。从0开始算。

2.NSMutableString继承于NSString,NSString能用的方法,NSMutableString都能用。

3.NSMutableString追加字符串时,本身序列发生变化,无需重新赋值

 

一、不可变字符串NSString

1. 初始化方法

unichar data[6] = {97 , 98 , 99 , 100 , 101, 102};
//1. 使用数组初始化字符串
NSString* str = [[NSString alloc]
initWithCharacters: data length:6];
NSLog(@"%@" , str);
char* cstr = "Hello, iOS!";
//2. 将C风格的字符串转换为NSString对象
NSString* str2 = [NSString stringWithUTF8String:cstr];
NSLog(@"%@" , str2);
//3. 将字符串写入指定文件,并读取文件内容,用文件内容初始化字符串
[str2 writeToFile:@"myFile.txt" atomically:YES encoding:NSUTF8StringEncoding error:nil];
NSString* str3 = [NSString stringWithContentsOfFile:@"NSStringTest.m" encoding:NSUTF8StringEncoding error:nil]; NSLog(@"%@" , str3);

2.功能

NSString* str = @"Hello";
NSString* say = @"Hi";
// 1.在str后面追加固定的字符串
str = [str stringByAppendingString:@",iOS!"];
NSLog(@"%@" , str);
const char* cstr = [str UTF8String];
NSLog(@"获取的C字符串:%s" , cstr);
// 2.在str后面追加带变量的字符串。
str = [str stringByAppendingFormat:@"%@是一句很友好的话."
			, say];
NSLog(@"%@" , str);
NSLog(@"str的字符个数为:%lu" , [str length]);
NSLog(@"str按UTF-8字符集解码后字节数为:%lu" , [str lengthOfBytesUsingEncoding:NSUTF8StringEncoding]);
// 3.获取str的前10个字符组成的字符串
NSString* s1 = [str substringToIndex:10];
NSLog(@"%@" , s1);
// 4.获取str的从第5个字符开始,与后面字符组成的字符串
NSString* s2 = [str substringFromIndex:5];
NSLog(@"%@" , s2);	
// 5.获取str从第5个字符开始,到第15个字符组成的字符串
NSString* s3 = [str substringWithRange:NSMakeRange(5, 15)];
NSLog(@"%@" , s3);
// 6.获取iOS在str中出现位置
NSRange pos = [str rangeOfString:@"iOS"];
NSLog(@"iOS在str中出现的开始位置:%ld, 长度为:%ld"
// 7.将str的所有字符转为大写
str = [str uppercaseString];
NSLog(@"%@" , str);

二、可变字符串NSMutableString

NSString* say = @"HI";
// 创建一个NSMutableString对象
NSMutableString* str = [NSMutableString stringWithString:@"Hello"];
// 1.追加固定字符串
[str appendString:@",iOS!"];
NSLog(@"%@" , str);
// 2.追加带变量的字符串
[str appendFormat:@"%@是一句很友好的话." , say];
NSLog(@"%@" , str);
// 3.在指定位置插入字符串
[str insertString:@"xxx" atIndex:6];
NSLog(@"%@" , str);
// 4.删除从位置6到位置12的所有字符
[str deleteCharactersInRange:NSMakeRange(6, 12)];
NSLog(@"%@" , str);
// 5.将从位置6到位置9的字符串替换成enen
[str replaceCharactersInRange:NSMakeRange(6, 9)withString:@"enen"];
NSLog(@"%@" , str);

  

  

 

我的OC成长之路(复习之字符串)

标签:

原文地址:http://www.cnblogs.com/lsa0913/p/5723892.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!