//---------------------------------1.创建字符串----------------------------------------
//---------------------------------直接赋值
NSString *str1 = @"iPhone";
NSLog(@"%@", str1);
//仅仅是初始化而没有赋值
NSString *str2 = [[NSStringalloc] init];
NSLog(@"%@", str2);
//initWithString的作用:将initWithString后面的值拷贝到开辟的空间中
//initWithString的值一定不能为空,当是一个变量时要保证变量不等于空
NSString *str3 = [[NSStringalloc] initWithString:@"iPhone"];
NSLog(@"%@", str3);
//initWithFormat的作用:将两个字符串拼接在一起
NSString *str4 = [[NSStringalloc] initWithFormat:@"%@5s", str1];
NSLog(@"%@", str4);
//stringWithString的作用,利用便利构造器创建一个字符串;
NSString *str5 = [NSStringstringWithString:@"iPhone"];
NSLog(@"%@", str5);
//stringwithString的作用,利用便利构造器创建一个字符串;
NSString *str6 = [NSStringstringWithFormat:@"123"];
NSLog(@"%@", str6);
//--------------------------------2.获取字符串长度-------------------------------------
//------------------------------NSUInteger
NSUInteger length = [str6 length];
NSLog(@"%lu", length);
//--------------------------------3.判断字符串的是否以指定字符串开始或者结束----------------
//---------------------hasPrefix
//比较前缀;返回一个BOOL类型的数据
NSString *str8 = @"123ABC";
BOOL result = [str8 hasPrefix:@"123"];
NSLog(@"%d", result);
//---------------------hasSuffix
//比较后缀;返回一个BOOL类型的数据
NSString *str9 = @"123ABC";
BOOL result2 = [str9 hasSuffix:@"ABC"];
NSLog(@"%d", result2);
//-------------------------------4.搜索字符串范围---------------------------------
//------------------rangeOfString
//返回的是一个结构体类型数据,其中成员变量为location和length,数据类型为NSUInterge,location是从0开始计数.
NSRange range = [str8 rangeOfString:@"3A"];
NSLog(@"%lu, %lu", range.location, range.length);
//------------------------------5.字符串截取(获取字符串中得一部分)-------------------
//---------------------substringWithRange
NSRange ra = {3, 3};
NSString *str10 = [str8substringWithRange:ra];
NSLog(@"%@", str10);
//--------------------------------6.字符串的拼接-------------------------------------
//-----------------------stringByAppendingString
//字符串被创建出来后就不能再被改变,拼接是利用它的返回值再加上添加部分,构成一个新字符串
NSString *str11 = [str8stringByAppendingString:@"123"];
NSLog(@"%@", str8);
NSLog(@"%@", str11);
//--------------------------------7.替换字符串----------------------------------------
NSString *str12 = [str8stringByReplacingOccurrencesOfString:@"3A"withString:@"2B"];
NSLog(@"%@", str12);
//---------------------------------8.字符串比较----------------------------------------
//-------------------------compare
//用前面字符串的ASCII码值减后面字符串的ASCII码值
NSInteger flag = [@"123"compare:@"123"];
NSLog(@"%ld",flag);
NSInteger flag2 = [@"121"compare:@"123"];
NSLog(@"%ld",flag2);
NSInteger flag3 = [@"124"compare:@"123"];
NSLog(@"%ld",flag3);
//------------------------------9.字符串和数值类型转换----------------------------------
//--------------------------intValue
//将字符串或BOOl值转变为int类型,如果字符串中包含字符,那么遇到第一个字母将停止转换
NSString *str13 = @"123";
int a = [str13 intValue];
NSLog(@"%d", a);
//--------------------------floatValue
float f = [str13 floatValue];
NSLog(@"%f", f);
//--------------------------boolValue
BOOL b = [str13 boolValue];
NSLog(@"%d", b);
//----------------------------10.大小写转换操作----------------------------------------
NSString *aaa = @"aaaDnkoDD";
NSLog(@"%@", [aaacapitalizedString]);//首字母大写,其他都小写
NSLog((@"%@"), [aaauppercaseString]);//所有都大写
NSLog(@"%@", [aaalowercaseString]);//所有都小写
NSLog(@"%@", aaa);
//---------------------------NSMutableString(可变字符串)-------------------------------
//可以先申请一小块内存存放mString的值,再根据实际情况向内存申请实际的大小
NSMutableString *mString = [[NSMutableStringalloc] initWithCapacity:0];
//拼接字符串
[mStringappendString:@"adfads"];
NSLog(@"%@", mString);
//插入字符串
[mStringinsertString:@"AAA"atIndex:2];
NSLog(@"%@",mString);
//删除字符串
[mString deleteCharactersInRange:NSMakeRange(2, 3)];//NSMakeRange创建一个location = 2,lenth = 3的Range结构体
NSLog(@"%@", mString);