// Create By 郭仔 2015年03月31日20:54:20
1. NSString类
?
?
// 求字符串长度
NSString *str = @"Hello郭String";
NSUInteger len = [str length]; // NSUInterger即long
NSLog(@"%ld",len);
?
//获取子字符串
?
?
NSString *substr = [str substringFromIndex:5];//从下标5开始取子字符串
NSLog(@"%@",substr);
// 从开始取子字符串到下标为5的位置截止
NSString *substr2 = [str substringToIndex:5];
NSLog(@"%@",substr2);
?
NSRange rang = {2,3}; //起始位置和长度
// 从起始位置2取长度为3的子字符串
NSString *substr3 = [str substringWithRange:rang];
NSLog(@"%@",substr3);
?
//拼接字符串
?
NSString *comStr1 = [str stringByAppendingString:@"IOS"];
NSLog(@"%@",comStr1);
?
NSString *comStr2 = [str stringByAppendingFormat:@"hehe%@ %@",@"hhh",@"jjj"];
NSLog(@"%@",comStr2);
?
?
//字符串替换
?
NSString * newStr1 = [str stringByReplacingOccurrencesOfString:@"string" withString:@"world"];
NSLog(@"%@",newStr1);
?
?
// 判断字符串是否相等
//判断字符串是否相等用 isEqualTo方法,不能用==判断
// isEqualTo方法判断的时字符串的内容是否相等,而==判断的时两个指针是否指向同一地址
?
NSString *cmpStr = @"Hello String";
BOOL eq = [str isEqualToString:cmpStr];
if (eq) {
NSLog(@"相等");
}
else{
NSLog(@"不相等");
}
// 判断前缀是否已给定的字符串相等,即是否已该字符串开头
BOOL prefix = [str hasPrefix:@"Hello"];
if (prefix) {
NSLog(@"以Hello开头");
}
else {
NSLog(@"不以Hello开头");
}
?
?
?
//判断后缀
//判断是否已png结尾,是就替换成jpg,否则拼接jpg
BOOL isPng = [str hasSuffix:@"png"];
if (isPng) {
//执行替换
NSString * tem = [str stringByReplacingOccurrencesOfString:@"png" withString:@"jpg"];
NSLog(@"%@",tem);
}
else
{ //执行拼接jpg
NSString *tem = [str stringByAppendingString:@"jpg"];
NSLog(@"%@",tem);
}
?
?
?
=====================================================================================
2. NSMutableString//可变字符串
NSMutableString *mulStr = [NSMutableString stringWithString:@"Hello"];
NSLog(@"%@",mulStr);
?
//拼接
[mulStr appendFormat:@"guozai"];
NSLog(@"%@",mulStr);
[mulStr appendString:@"mutible"];
NSLog(@"%@",mulStr);
?
?
//删除子字符串
NSRange ran = {4,1};//结构体类型
[mulStr deleteCharactersInRange:ran];
NSLog(@"%@",mulStr);
?
//替换
NSRange ran2 = {3,2};
[mulStr replaceCharactersInRange:ran2 withString:@"yy"];
NSLog(@"%@",mulStr);
?
//插入
[mulStr insertString:@"tt" atIndex:2];
NSLog(@"%@",mulStr);
?
?
// 对于不可变字符串NSString的字符串拼接,分割等操作,都会创建新的字符串
// 对于可变字符串NSMutableString的字符串拼接分割替换等操作是在原字符串的基础上
// 进行修改,不会创建新字符串
// NSMutableString是NSString的子类,所以NSString的方法,NSMutableString也
//可以使用
// 在以后的学习中,凡是出现Mutable的类,都是不带Mutable类的子类:
//如,NSMutableArray是NSArray的子类,NSMutableDictionary是NSDictonary的子
//类
==================================================================================== 3.NSArray
?
//数组
//最后的nil不可丢掉
NSArray *arr =[NSArray arrayWithObjects:@"guozai", @"guo",@"zaiguo",nil];
?
// 获取数组元素个数
NSUInteger count = [arr count];
NSLog(@"%lu",count);
?
?
//获取第一个对象
NSString *p1 = [arr firstObject];
NSLog(@"%@",p1);
?
?
// 获取最后一个对象
NSString *p2 = [arr lastObject];
NSLog(@"%@",p2);
?
// 获取下标对应的对象
NSString *p3 = [arr objectAtIndex:1];
NSLog(@"%@",p3);
?
?
//遍历数组
for (int i = 0; i < [arr count]; i++) {
NSLog(@"%@",[arr objectAtIndex:i]);
}
===================================================================================== 4.NSMutableArray
?
//可变数组
// 一个数组的内容赋给另一个数组
NSMutableArray * mulArray = [NSMutableArray arrayWithArray:arr];
//删除下标为index的对象
[mulArray removeObjectAtIndex:2];
?
// for (int i = 0; i < [arr count]; i++) {
// NSLog(