标签:
不可变字符串
【OC字符串的初始化】
1.字符串的初始化(减方法)
NSString * str2 = [[NSString alloc]init];
2.字符串的初始化(加方法)
NSString * str3 = [NSString string];
3.字符串的初始化由另外一个字符串给
NSString * str4 = [[NSString alloc]initWithString:str1];
4.将C语言的字符串给OC字符串作为初始化的值(减方法)
NSString * str6 = [[NSString alloc]initWithUTF8String:"cccc"];
5.将C语言的字符串给OC字符串作为初始化的值(加方法)
NSString * str7 = [NSString stringWithUTF8String:"ccccc"];
6.自定义格式的OC字符串初始化(减方法)
NSString * str8 = [[NSString alloc]initWithFormat:@"%d %c %@",2,‘A‘,@"ohhhh~" ];
7.自定义格式的OC字符串初始化(加方法)
NSString * str9 = [NSString stringWithFormat:@"%d %c %@",2,‘B‘,@"shabi~~"];
【将OC字符串转成其他类型】
1. 把字符串转成int类型
int i = [str intValue];
2 .把字符串转成float类型
float f = [str floatValue];
3.把字符串转成long long类型
long long l = [str longLongValue];
4。把字符串转成OC的NSUInteger类型
NSUInteger n = [str integerValue];
5.把字符串转成double类型
double d = [str doubleValue];
6。把字符串转成BOOL类型
BOOL b = [str boolValue];
7.把字符串转成c语言的字符串
const char * p = [str UTF8String];
【字符串的比较】
1.比较字符是不是相同
BOOL ret = [str1 isEqualToString:str2];
2.比较两个字符串的大小
NSComparisonResult ret1 = [str1 compare:str2];
返回值:
NSOrderedSame : 相等
NSOrderedDescending :降序(左边大于右边)
NSOrderedAscending:升序 (右边大于左边)
3.得到字符串的长度
NSUInteger len = [str1 length];
4.得到OC字符串的第几个字符
unichar c = [str1 characterAtIndex:0];
遍历:
for ( int i = 0 ; i < len; i ++) {
c = [str1 characterAtIndex:i];
NSLog(@"%c",c);
}
【子串】
1.在父串中查找子串的范围
NSRange rang = [str rangeOfString:subStr];
/*
typedef struct _NSRange {
NSUInteger location; //索引
NSUInteger length; //长度
} NSRange;
*/
2.提取子串(从索引直到串尾)
NSString * sub1 = [str substringFromIndex:3];
3.提取子串(从开头到索引 不包括索引)
NSString * sub2 = [str substringToIndex:3];
4.提取某段范围的子串
sub3 = [str substringWithRange:NSMakeRange(1, 4)];
【大小写转换】
1.小写全部转成大写
NSString * st2 = [st1 uppercaseString];
2。大写全部转小写
NSString * st3 = [st1 lowercaseString];
【可变字符串】
【初始化】
1.开辟空间的初始化(减方法)
NSMutableString * str1 = [[NSMutableString alloc]initWithCapacity:10];
2.开辟空间的初始化(加方法)
str1 = [NSMutableString stringWithCapacity:10];
3.带格式字符串的初始化
NSMutableString * str2 = [[NSMutableString alloc]initWithFormat:@"%@",@"abc"];
【可变字符串的增删改查】没有返回值
1.追加
[str2 appendString:@"123"];
2.有格式的追加
[str2 appendFormat:@"%d%@",2,@"asd"];
3.删除字符串中某个范围字符
[str2 deleteCharactersInRange:NSMakeRange(0, 2)];
4.插入
[str2 insertString:@"AAA" atIndex:3];
5。修改
[str2 replaceCharactersInRange:NSMakeRange(3, 4) withString:@"MaoGe"];
6.重置
[str2 setString:@"abcd"];
//3种置空方法 删除 重置 替换
[str2 deleteCharactersInRange:NSMakeRange(0, [str2 length])];
[str2 setString:@""];
[str2 replaceCharactersInRange:NSMakeRange(0, [str2 length]) withString:@""];
标签:
原文地址:http://www.cnblogs.com/devinwu1/p/4941908.html