一. 字符串
OC中字符串的格式:NSString *string =@"字符";
* * * 字符串类分为两种
1⃣️ NSString:不可变在字符串
不能够修改字符串的内容,也就是说不能对字符串进行增删改查
2⃣️ NSMutableString:可变字符串
对象确定后,能够修改字符串内容,能够对字符串进行增删改查
先说 NSString:不可变在字符串的所有
1. 创建一个字符创常量
(1). 直接赋值
//通过直接赋值,创建一个字符串常量
NSString *str1 = @"字符串1";
(2). 通过初始化,便利构造
通过初始化方法和便利构造方法创建一个空字符串对象
NSString *str2 = [[NSString alloc]init];
NSString *str3 = [NSString string];
给空字符串对象赋值
str2 = @"字符串2";
str3 = @"字符串3";
2. 快速创建一个字符串
(1).通过带参数的init方法快速创建
NSString *str4 =[[NSString alloc]initWithString:@"字符串4"];
(2).通过带参数的便利构造方法快速创建字符串
NSString *str5 = @"字符串";
3. 创建一个格式化的字符串
(1).通过带参数的便利构造方法创建格式化字符串,后面的格式,跟 NSlog括号内的一样
int a = 6;
NSString *str6 = [NSString stringWithFormat:@"字符串%d",a];
NSLog(@"字符串%d",a);
NSString *str7 = [[NSString alloc]initWithFormat:@"字符串%d",a];
4. 字符串的比较 比较:compare
(1). 区分大小写的比较:compare
NSString *str8 = @"ABC";
NSString *str9 = @"ab";
NSComparisonResult resutl = [str8 compare:str9];//resutl结果
(2). 不区分大小写的比较:caseInsensitiveCompare
NSComparisonResult result1 = [str8 caseInsensitiveCompare:str9];
(3). isEqualToString比较字符串对象的内容是否一样;==比较两个字符对象的内 存地址是否一样,用BOOL 接受
BOOL isEqual = [str8 isEqualToString:str9];
5. 字符串的转换
(1). 将字母转化为大写:uppercaseString
NSString *str10 = @"aBcD";
NSString *uppercaseTest = [str10 uppercaseString];
(2). 将字母转化成小写:lowercaseString
NSString *lowercaseTest = [str10 lowercaseString];
(3). 将首字母大写,后面小写:capitalizedString
NSString *capitaTest = [str10 capitalizedString];
[lowercaseTest isEqualToString:@""];
6. 字符串的截取与拼接
(1). 表示从头截取到哪里:substringToIndex
NSString *str11 = @"hello iOS";
NSString *substring = [str11 substringFromIndex:5];
(2). 表示从哪里开始到尾:substringFromIndex
NSString *subsfrom = [str11 substringFromIndex:3];
(3). 表示按指定的范围截取:substringWithRange
//NSRang 规定一个返回,locationd代表从哪里开始截取 length代表截取多长
NSRange rang = {1,1};
//表示按指定的范围截取
NSString *subswith = [str11 substringWithRange:rang];
//通过length获取到字符串的长度
long strLeng = str11.length;
NSString *str12 = @"hello";
//拼接字符串
NSString *appendStr = [str12 stringByAppendingString:@"你好%"];
int b = 12;
(4). 格式化拼接字符串:stringByAppendingFormt
NSString *formeAppend = [str12 stringByAppendingFormat:@"你好%d",b];
7. 字符串转换数组
(1).用特定字符分割字符串:componentsSeparatedByString
NSMutableString方法
//字符串转数组
NSString *str13 = @"哈哈 特别可爱";
// 用特定字符串分割字符串
NSArray *aryay = [str13 componentsSeparatedByString:@"吃饭"];
NSMutableString:可变字符串
1. 增->使原字符改变
(1). 对自身进行修改:appendString
[str14 appendString:@"修改1"];
(2). 对自身进行格式化拼接:appendFormat
int c = 14;
[str14 appendFormat:@" %d",c];
(3). 在字符串的指定位置插入内容:insertString...atIndex
[str14 insertString:@"" atIndex:3];
2. 删->删除原字符串的某些内容
(1). 删除原字符串中指定区域的字符:deleteCharactersInRange range指代删除内容范围
NSRange rang1 = {5,2};
[str14 deleteCharactersInRange:rang1];
3. 改->修改原字符的某些内容
(1). 修改字符的内容:replaceCharactersInRange...withString
range指代修改内容范围,withString后面加修改后的内容
NSRange rang2 = {6,5};
[str14 replaceCharactersInRange:rang2 withString:@"成功"];
4. 查->查找原字符串的字符
(1). 查找原字符串中是否有指定的字符:containsString BOOL类型 接收
BOOL isHeart = [str14 containsString:@""];