第四节
1.使用苹果帮助文档
(1)Xcode—>Help—>Documentation and API Reference
(2)在代码中使用command + 鼠标左键
2.不可变字符串类
#pragma mark 字符串
NSString *string = @"helloworld";
//字符串长度
NSInteger length = [string length];
NSLog(@"字符串string的长度:%lu",length);
//字符串指定位置的字母
unichar c = [string characterAtIndex:4];
NSLog(@"字符串string的第五个字母:%c",c);
//判断是否以 开头
BOOL result1 = [string hasPrefix:@"hello"];
NSLog(@"字符串string是否(%d)hello开头",result1);
//判断是否以 结尾
BOOL result2 = [string hasSuffix:@"rd"];
NSLog(@"字符串string是否(%d)rd开头",result2);
//字符串替换
NSString *str = [string stringByReplacingOccurrencesOfString:@"world" withString:@"meinv"];
NSLog(@"%@",str);
//字符串查找
//(1)创建一个范围
NSRange range = NSMakeRange(2, 4); //从第三个开始取其后四个字母
//(2)获取该位置的字符串
NSString *str2 = [string substringWithRange:range];
NSLog(@"%@",str2);
//字符串查找:(从指定位置开始到字符串结束)
NSString *str3 = [string substringFromIndex:3];
NSLog(@"***%@",str3);
//(从开始到字符串指定位置结束)
NSString *str4 = [string substringToIndex:3];
NSLog(@"*****%@",str4);
//字符串拼接
NSString *str5 = [str4 stringByAppendingString:str3]; //将str3加str4后面
NSLog(@"%@",str5);
//字符串比较是否相等
BOOL result3 = [string isEqualToString:str5]; //相等返回1,不相等返回0
NSLog(@"%d",result3);
//判断哪个字符串大?
int result4 = [str3 compare:str4]; //返回1,str3大于str4 返回0,两字符串相等,返回-1,str3小于str4;
NSLog(@"%d",result4);
//将字符串转换为数字
NSString *str6 = @"12";
int a = [str6 intValue];
NSLog(@"%d",a);
//将小写字母转换成大写
NSString *str7 = [str5 uppercaseString];
NSLog(@"%@",str7);
//将str7转换成小写
NSString *str8 = [str7 lowercaseString];
NSLog(@"%@",str8);
3.可变字符串
//创建可变字符串
NSMutableString *mstr = [NSMutableString stringWithString:string];
[mstr appendString:@"meizi"];
NSLog(@"%@",mstr);
//可变字符串替换
[mstr replaceCharactersInRange:range withString:@"哈哈"];
NSLog(@"%@",mstr);
//可变字符串插入
[mstr insertString:@"溜溜" atIndex:1];
NSLog(@"%@",mstr);
//可变字符串中删除字符串
[mstr deleteCharactersInRange:NSMakeRange(1, 2)];
NSLog(@"%@",mstr);
4.不可变与可变字符串
(1)不可变字符串的修改操作,本质就是得到⼀一个新的字符串。
(2) 不可变字符串的修改⽅方法以string开头,有返回值。
(3)可变字符串的修改⽅方法没有返回值,修改原字符串。
5.不可变数组
#pragma mark 数组
//创建不可变数组
NSArray *array = [NSArray arrayWithObjects:@"hello",[NSNull null], @"world",nil];
NSLog(@"%@",array);
//获取数组元素个数
int num = (int)[array count];
NSLog(@"%d",num);
//获取索引位置的元素
id temp = [array objectAtIndex:2];
NSLog(@"%@",temp);
//获取某个元素在数组的索引值,不在时返回-1
int index = (int)[array indexOfObject:@"wo"];
NSLog(@"%d",index);
//遍历数组
for (int i = 0; i < [array count]; i++) {
id obj = [array objectAtIndex:i];
NSLog(@"%@",obj);
}
```
6.可变数组
//可变数组
NSMutableArray *marray = [NSMutableArray arrayWithObjects:@"1",@"2",@"3",@"4",@"5",nil];
NSLog(@"%@",marray);
//添加一个新元素(顺序添加)
[marray addObject:@"6"];
NSLog(@"%@",marray);
//添加一个新元素到指定位置
[marray insertObject:@"1.5" atIndex:1];
NSLog(@"%@",marray);
//交换两个元素的位置
[marray exchangeObjectAtIndex:1 withObjectAtIndex:3];
NSLog(@"%@",marray);
//替换某个元素
[marray replaceObjectAtIndex:3 withObject:@"787"];
NSLog(@"%@",marray);
//删除元素
[marray removeObject:@"787"]; //从对象删除
NSLog(@"%@",marray);
[marray removeObjectAtIndex:1]; //从下标删除
NSLog(@"%@",marray);
[marray removeLastObject]; //删除最后一个元素
NSLog(@"%@",marray);
[marray removeAllObjects]; //删除全部元素
NSLog(@"%@",marray);
7.基本数据类型转化成NSNumber
//将基本数据类型的数据转换成NSNumner,再转换成基本数据类型
NSNumber *number = [NSNumber numberWithInt:10];
NSLog(@"%@",number);
int d = [number intValue];
NSLog(@"%d",d);