OC 字符串
#import <Foundation/Foundation.h>
int main(int argc,constchar * argv[]) {
@autoreleasepool {
字符串的初始化:
// NSString *string=@"我是好学生。";
//初始化一个空字符串
//NSString *string=[NSString string];
// NSString *string=[[NSString alloc]init];
处理字符串:
//1、把字符串转成大写
// NSString *name=@"HuLuWa";
//uppercaseString转大写
// name=[name uppercaseString];
//2、把字符串转小写
//lowercaseString是转小写的
// name =[name lowercaseString];
//3、只让首字母大写
// name=[name capitalizedString];
// NSLog(@"%@",name);
//4、判断字符串是不是以什么字符开头
//Bool布尔类型->只有YES(1)或NO(0)
//布尔类型默认值是NO
/* NSString *name=@"毛泽东";
BOOL isRight=[name hasPrefix:@"毛"];
if (isRight!=YES) {
NSLog(@"不是毛家人");
}
else
NSLog(@"是毛家人");*/
/*( NSString *num=@"15723488992";
BOOL isRight=[num hasPrefix:@"135"];
if (isRight!=YES) {
NSLog(@"不是135开头");
}
else
NSLog(@"是135开头");
*/
//5、判断字符串是不是以什么结束
/*NSString *string=@"今天真好。";
if ([string hasSuffix:@"。"]!=YES) {
NSLog(@"不是以句号结束");
}*/
//6、NSRange:范围(本质是一个结构体:包含起点位置和长度)
/*NSRange range;
range.length=3;
range.location=1;*/
/* NSString *string=@"背着书包去放牛。";
//@"书包";
//NSNotFound没有找到
NSRange range=[string rangeOfString:@"书包"];
if (range.location!=NSNotFound) {
NSLog(@"背着书包呢");
}*/
//7、判断两个字符串是否相同
/* NSString *string=@"阿里";
BOOL isEq=[string isEqualToString:@"阿狸"];
if (isEq!=YES) {
NSLog(@"不相同");
}else{
NSLog(@"不相同");}*/
//8、截取字符串
//NSString *string=@"太阳光!金亮亮!雄鸡唱三唱!";
//(1)从开头截取到第三个位置
// NSString *newString=[string substringToIndex:3];
//(2)从哪一个位置截取到最后
// NSString *newString=[string substringFromIndex:3];
// NSRange range;
// range.location=4;
// range.length=3;
// NSString *newString=[string substringWithRange:range];
// NSLog(@"%@",newString);
// 9、字符串的拼接
// NSString *string=@"12345";
//在string这个字符串的基础之上拼接一个字符串形成新的字符串
//在string的后面拼接“上山打老虎”
//字符串拼接的顺序就是字符串内容的顺序
// NSString *newString=[string stringByAppendingString:@"上山打老虎"];
// NSLog(@"%@ ",newString);
// NSString *string=@"金刚葫芦娃";
// NSString *s1= @"是";
// NSString *s2= @"钢铁做的";
// int num=500;
// NSString *s3= @"斤";
//格式化拼接字符串 可以把任何格式的对象转换成字符串拼接之后也会生成一个新的字符串
// NSLog(@"%@%@%@%d%@",string,s1,s2,num,s3);
//Format 格式化
//在一个字符串基础之上拼接一个格式化字符串生成一个新的字符串
// NSString *newString=[string stringByAppendingFormat:@"%@%@%d%@",s1,s2,num,s3];
// NSLog(@"%@",newString);
// //使用格式化字符串目的是为了把其他格式的数据转成字符串
// float score=90.5;
// NSString *s=[NSString stringWithFormat:@"%0.1f",score];
//数据转换
//把其他数据类型转换成字符串可以使用格式化字符串的方法
//字符串转BOOL类型
// NSString *s=@"wereter";
//除了数字字符串转换成BOOL类型或者int ····都是0 如果是数字那就是对应的数字
// BOOL is=[s boolValue];
//判断字符串的长度 length
// if(s.length==0){
//
// }
//可变字符串NSMutableString
//NSMutableString 是NSString的儿子
//NSString的方法NSMutableString都可以使用
//直接用@""编译器会认为是一个有固定长度的字符串
/*方法前面是减号(-)号表示是一个对象(实例)方法对象方法用对象名去调用方法
方法前面是加号(+)表示是一个类方法
类方法用类名调用方法
OC允许两个方法一起调用
*/
//NSMutableString *string=[[NSMutableString alloc]initWithString:@""];
// NSMutableString *string=[NSMutableString stringWithFormat:@""];
//为什么有可变字符串和不可变字符串❓
//目的为了让原有字符串可以添加内容,删除内容,改变内容
NSMutableString *string=[NSMutableStringstringWithString:@"直接格式化"];
[string appendString:@"stringWithFormat"];
[string appendFormat:@"小清新"];
//插入字符串可以随意插入到随意位置
[string insertString:@"12"atIndex:3];
/*
int a = 10;
float b = 10.0;
double c = 20.4;
short d = 2;
long int v = 33;
char mm = 'a';
*/
#pragma mark 增
NSMutableString *string=[[NSMutableStringalloc]initWithString:@"你好啊!"]; [string insertString:@",朋友"atIndex:3];
NSLog(@"string==%@",string);
#pragma mark 删
NSRange range={2,1};
[string deleteCharactersInRange:range];
NSLog(@"string==%@",string);
#pragma mark 改
[string replaceCharactersInRange:rangewithString:@"吗"];
#pragma mark 查
NSRange range1=[stringrangeOfString:@"好"];
if ( range1.location==NSNotFound) {
NSLog(@"");
NSString *string1=@"太阳光!金亮亮!雄鸡唱三唱!";
NSRange range = [string1rangeOfString:@"金亮亮"];
if (range.location !=NSNotFound) {
NSLog(@"字符串中包含金亮亮");
}
if ( [string1hasPrefix:@"太"] !=0) {
NSLog(@"字符串是以太开头的");
}
NSString *s = [string1stringByAppendingFormat:@"%@",string];
NSLog(@"%@",s);
}
return 0;
}