Oc课堂笔记->字符串NSString

OC中字符串NSString

不可变字符串NSString

    //1.初始化

    //2.使用字符串常量初始化

    NSString *s1 = @"hELLO";

    //3.初始化方法

    NSString *s2 = [[NSString alloc] initWithFormat:@"%@world",s1];

    NSLog(@"s2:%@",s2);

    //使用一个已经创建好的字符串,初始化另一个字符串

    NSString  *s3  =[[NSString alloc] initWithString:s2];

    NSLog(@"s3:%@",s3);

    //使用便利构造器创建字符串

    NSString *s4 = [NSString stringWithFormat:@"%@,世界你好",s3];

    NSLog(@"s4:%@",s4);

    NSString *s5 = [NSString stringWithString:s4];

    NSLog(@"s5:%@",s5);

    //常用方法

    //1.length  返回字符串的长度

    NSInteger n1 = [s1 length];

    NSLog(@"%ld",n1);

    //2.characterAtIndex:返回你输入的位置字符

    NSLog(@"%c",[s1 characterAtIndex:1]);

    //3.hasPrefix//判断输入的字符串,是不是s5字符串的前缀,如果是返回YES如果不是返回NO;

    BOOL b1 = [s5 hasPrefix:@"hello"];

    NSLog(@"%d",b1);

    //4.hasSuffix//判断输入的字符串,是不是s5字符串的后缀,如果是返回YES如果不是返回NO;

    BOOL b2 = [s5 hasSuffix:@"你好"];

    NSLog(@"%d",b2);

    //5.rangeOfString(字符串的范围):返回输入字符串在S5中的范围(位置和长度),表示范围的结构体是NSRange;

    NSRange rang1 = [s5 rangeOfString:@"你好"];

    NSLog(@"位置%lu 长度:%ld",rang1.location,rang1.length);

    //6.stringWithRange:传入一个范围NSRange,通过这个范围,截取S5中的字符串,并返回;

    NSRange range2 = {12,2};

    NSString *s6 = [s5 substringWithRange:range2];

    NSLog(@"%@",s6);

    //7.substringFromIndex://传入一个下标值,输出从这个下标开始一直到结束的子串.

    NSString *s7 = @"abcdefg";

    NSString *s8 = [s7 substringFromIndex:2];

    NSLog(@"%@",s8);

    //8.substringToIndex:传入一个下标值,然后从头到该下标的子串返回(输出),不包含该下标的字符;

    NSString *s9 = [s7 substringToIndex:5];

    NSLog(@"%@",s9);

    //9.stringByAppendingString:将参数字符串拼接到S7的后面;

    NSLog(@"%@",[s1 stringByAppendingString:s8]);//把S8拼接到S7;

    //10.isEqualToString:判断两个字符串是否相等,如果是YES,否则NO;

    BOOL b3 = [s7 isEqualToString:@"abcdefg"];

    NSLog(@"%d",b3);

    //11.compare:比较两个字符串大小,如果是升序返回-1(前面小后面打),相同返回0,降序返回1(前面大后面小)

    BOOL b4 = [s7 compare:@"abcdefg"];

    NSLog(@"%d",b4);

    //12.uppercaseString:把小写换成大写

    NSLog(@"%@", [s7  uppercaseString]);

    //13.lowercaseStribf:把大写换成小写

    NSLog(@"%@",[s1 lowercaseString]);

    //14.capitalizedString:把首字母换成大写,其余是小写

    NSLog(@"%@",[s1 capitalizedString]);

    //15.intValue:()找到第一个不是数字的字符为止,将前面的数字字符转换成整形,并返回.

    NSString *s14 = @"123";

    NSLog(@"%d",[s14 intValue]);

    //floatValue:将字符串中浮点型字符转换成浮点型,

    NSString *s15 = @"12.5678";

    float f1 = [s15 floatValue];

    NSLog(@"%f",f1);


//可变字符串

//NSString是不可变的字符串,字符串一旦创建就不能改变了.

    //NSMutableString

    //可变字符串继承不可变字符串,同时继承了所有的方法.

    NSMutableString *ms1 = [[NSMutableString alloc] initWithFormat:@"abcdefg"];

    NSMutableString *ms2 = [NSMutableString stringWithFormat:@"abcdefg"];

    //NSMutableString *ms3 = @"3123";只有这个不能用,不可变字符串不能定义常量;

    //appendString:可变字符串拼接:直接拼接到原字符串后面

    [ms1 appendString:@"hijk"];

    NSLog(@"%@",ms1);

    NSRange rang11 = {0,3};//从0位置,三个字符串(意思就是把前面三个字符串替换成其他的字符串"没有数量限制")

    //replaceCharactersInRange字符串拼接

    [ms1 replaceCharactersInRange:rang11 withString:@"aaaaaaaaaaaaaaaaaaaaaaaaaaa"];//替换没有数量限制

    NSLog(@"%@",ms1);

    //insertStrin插入字符串到一个位置,

    [ms1 insertString:@"www" atIndex:2];

    NSLog(@"%@",ms1);

    //deleteCharactersInRange:删除字符串

    //NSRange rang12 = {2,3};

    [ms1 deleteCharactersInRange:NSMakeRange(2, 3)];

    NSLog(@"%@",ms1)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值