字符串分为:不可变字符串(NSString)和可变字符串(NSMutableString)
/* 不可变字符串 */
1. 创建字符串对象
(1)初始化方法
NSString *name1 =[[NSString alloc]initWithString:@"1234567890"]
(2)便利构造器
NSString *name2 = [NSString stringWithString:@"1234567890"];
(3)字面量
NSString *name3 = @"1234567890";
NSLog(@"length = %ld", [name3 length]);
NSLog(@"%ld", name3.length);
3.获取子字符串
(1)从字符串第三个字符之后开始获取
NSString *str1 = [name3 substringFromIndex:3]
(2)获取字符串前三个字符
NSString *str2 = [name3 substringToIndex:3];
(3)根据指定位置来获取字符串
NSRange range = NSMakeRange(2, 3);
NSString *str3 = [name3 substringWithRange:range];
4.拼接字符串
NSString *pro = @"辽宁省";
NSString *city = @"大连市";
NSString *area = @"沙河口";
NSString *str4 = [pro stringByAppendingString:city];
NSString *str5 = [str4 stringByAppendingString:area];
NSLog(@"%@", str5);
5.替换字符串
(1)直接替换
NSString *word = @"helle";
NSString *newword = [word stringByReplacingOccurrencesOfString:@"e" withString:@"o"];
(2)根据指定位置来替换
NSRange range1 = NSMakeRange(4, 1);
NSString *str7 =[word stringByReplacingCharactersInRange:range1 withString:@"o"];
6.字符串相等
NSString *useName = @"Yuno";
if ([useName isEqualToString:@"Yuno"]) {
NSLog(@"登陆");
}else {
NSLog(@"用户不存在");
}
7.字符串比较 (逐个比较大小)
NSString *str8 = @"abc";
NSString *str9 = @"abd";
NSLog(@"比较结果:%ld", [str8 compare:str9]);
8.判断字符串是什么开头或者结尾
- (BOOL)hasPrefix:(NSString *)aString; //判断是什么开头
- (BOOL)hasSuffix:(NSString *)aString; //判断是什么结尾
9.字符串大小转换
NSString *str10 = @"I am a student";
// 字符串全部改成大写字母
NSString *str11 = [str10 uppercaseString];
// 字符串全部改成小写字母
NSString *str12 = [str10 lowercaseString];
// 字符串每一个单词开头变成大写
NSString *str13 = [str10 capitalizedString];
// 字符串转数值
NSString *str14 = @"3.1415926";
double d = [str14 doubleValue]; //如果转出整形 [str14 intValue];
// 数值转字符串
int a =12345;
NSString *str15 = [NSString stringWithFormat:@"%d", a];
// Format 格式化
NSString *str16 = [NSString stringWithFormat:@"生成新的字符串 %@", str16];
NSString *s = @"abc/def/ghi";
NSArray *my = [str componentsSeparatedByString:@"/"]; // 用"/"将字符串分割,返回值为数组
/* 可变字符串 */
1.创建可变字符串
NSMutableString *mstr = [NSMutableString stringWithString:@"可变字符串"];
NSMutableString *mstr1 = [NSMutableString stringWithFormat:@"可变字符串 %@", mstr];
2.拼接字符串
[mstr appendString:@"可变长"]; // 一般可变量的方法都没有返回值
NSLog(@"mstr = %@", mstr);
3.插入字符串
[mstr insertString:@"任意" atIndex:6]; //根据下标来插入
4.删除字符串
NSRange range2 = NSMakeRange(6, 2); //根据指定位置来删除字符串
[mstr deleteCharactersInRange:range2];