将字符串分割成数组
将字符串中的特定字符移除后,分割成数组的componentsSeparatedByString方法是通过移除相同的字符去分割的,componentsSeparatedByCharactersInSet是
NSArray *text= "hello world";
NSArray *words = [text componentsSeparatedByString:@" "];//以空格将text字符串分割成数组
数组按特定字符变成字符串
componentsJoinedByString方法按特定字符将数组变成字符串;
[reversed componentsJoinedByString:@" "]
NSString *a = [[NSString alloc] initWithString : @"冬瓜,西瓜,火龙果,大头,小狗" ];
NSArray *b = [a componentsSeparatedByString:@","];
NSString *a3 = [b objectAtIndex:2];
NSLog(@"\n b的第三个东东是: %@", a3);
[a release];
逆序输出数组
使用reverseObjectEnumerator将数组倒序输出;
//1.原始数组
NSMutableArray *array = [NSMutableArray arrayWithObjects:@"1",@"2",@"3",nil];
//2.倒序的数组
NSArray* reversedArray = [[array reverseObjectEnumerator] allObjects];
枚举器遍历
NSEnumerator提供枚举器方法可以通过枚举器取数组里面的每一个元素.
//2、枚举器法
NSLog(@"------- 枚举器法---------");
//ObjectEnumerator 正序
//reverseObjectEnumerator 逆序
NSEnumerator *enumerator = [array reverseObjectEnumerator];
id obj = nil; //不确定数组里面具体对象的类型,所以定义成id 类型指针
while (obj = [enumerator nextObject]) { //通过枚举器,取数组里面的每一个元素
NSLog(@"%@", obj); //将元素赋给 obj, 直到数组结束
//取到的结果为nil,退出while
}
NSArray *reversed = [[words reverseObjectEnumerator] allObjects];
//倒序遍历数组中的每一个元素
字符串的长度
在object-c中, “length”这个方法,可以返回字符串的长度。
在oc中,不管字符串中是中文还是其他字符,每个符号长度都是1.
- 纯英文的字符串长度计算:
NSString *str = @"wanghy";
NSUInteger len = [str length];
//此时 len 的值就是6.
- 纯中文的字符串的长度计算
// 中文的每个汉字都当做一个字符
NSString *str2 = @"世界那么大,我想去看看";
len = [str2 length];
//len的值应该是11.
-
中英文混合
// 总结: 不管中文还是英文,在OC中认为就是一个字符
NSString *str3 = @“哈哈哈哈itcast”;
len = [str3 length];
NSLog(@“len = %ld”,len); // len = 10;