文章标题

来源:互联网 发布:大数据开发云盘 编辑:程序博客网 时间:2024/05/22 03:37
OC的类很多,而我们要做的是熟悉这些类,并且能够熟练的使用类的方法,当然类和方法也是会不断更新的,我们要不短的学习才行NSString  我们常用的类

NSString
1.利用系统类 初始化对象
NSString *str = @”123”; 这里给字符串str直接初始化了,并赋值了
2.利用创建出的对象 调用系统方法
获取字符串长度
NSString *str = @”上海蓝鸥科技”;
NSUInteger length = [str length];
NSLog(@”%lu”,length);
// 获取字字符串(字符串截取)
// 按范围截取字符串
// NSRange range = NSMakeRange(2, 2);
NSString *strNew = [str substringWithRange:NSMakeRange(2, 2)];
NSLog(@”%@”,strNew);
按索引截取字符串
从索引处开始截取 截取到结束
NSString *strNew = [str substringFromIndex:2];
NSLog(@”%@”,strNew);
// 从头开始截取到索引处
NSString *strNew2 = [str substringToIndex:2];
NSLog(@”%@”,strNew2);

// 字符串拼接NSString *strNew = [str stringByAppendingString:@"14班"];NSLog(@"%@",strNew);// 格式化拼接NSString *strNew1 = [str stringByAppendingFormat:@"%d班",14];NSLog(@"%@",strNew1);// 替换字符串// 前面的 被替换成 后面的NSString *strNew = [str stringByReplacingOccurrencesOfString:@"上海" withString:@"北京"];NSLog(@"%@",strNew);// 按范围 替换字符串NSString *strNew1 = [str stringByReplacingCharactersInRange:NSMakeRange(2, 4) withString:@"传智博客"];NSLog(@"%@",strNew1);// 判断字符串相等NSString *str1 = @"上海蓝鸥科技";BOOL result = [str isEqualToString:str1];NSLog(@"%d",result);// 判断前缀 后缀BOOL result = [str hasPrefix:@"上海"];BOOL result1 = [str hasSuffix:@"科技"];NSLog(@"%d",result);NSLog(@"%d",result1); 字符串比较NSString *str1 = @"abc";NSString *str2 = @"adc";// 返回值是个枚举 -1 0 1NSComparisonResult result = [str1 compare:str2];NSLog(@"%ld",result);// 字符串大小写 转换NSString *str = @"how are you";// 全部转大写NSString *strNew = [str uppercaseString];NSLog(@"%@",strNew);// 全部转小写NSString *strNew2 = [strNew lowercaseString];NSLog(@"%@",strNew2);// 首字母大写NSString *strNew3 = [str capitalizedString];NSLog(@"%@",strNew3);NSString *imageName = @"haha.png";// 定义一个新的字符串 来接收 拼接后的字符串NSString *strNew = nil;BOOL  result = [imageName hasSuffix:@"png"];if (result == YES) {    strNew = [imageName stringByReplacingOccurrencesOfString:@"png" withString:@"jpg"];} else{    strNew = [imageName stringByAppendingString:@".jpg"];}

不可变字符串 NSString
不可变字符串 如果重新赋值的话 改变的不是其本身 而是进行了 重指向 指向一个新的字符串
相当与指向常量区
NSString *str = @”王龙”;
str = @”壮壮”;
NSLog(@”%@”,str);

 可变字符串 可变字符串的自定义初始化NSMutableString *str = [[NSMutableString alloc]initWithString:@"sgr"];// 便利构造器方法

// NSMutableString *str1 = [NSMutableString stringWithFormat:@”sgr”];

// 拼接字符串(特点  肯定是没有返回值的,因为可变字符串  操作字符串本身)[str appendString:@"wanglong"];NSLog(@"%@",str);// 插入字符[str insertString:@"is" atIndex:7];NSLog(@"%@",str);// 替换字符[str replaceCharactersInRange:NSMakeRange(3, 1) withString:@"L"];NSLog(@"%@",str);// 删除字符[str deleteCharactersInRange:NSMakeRange(7, 2)];NSLog(@"%@",str);⽤NSMutableString完成下述功能:给定一个图片文件名,判断字符串中是否以“png”结尾,如果是就替换成“jpg”,如果不是,就拼接”.jpg”NSMutableString * imageName = [[NSMutableString alloc]initWithString:@"haha.png"];BOOL result = [imageName hasSuffix:@"png"];NSInteger length = [imageName length];if (result == YES) {    // 替换    [imageName replaceCharactersInRange:NSMakeRange(length  - 3, 3) withString:@"jpg"];} else{    // 拼接    [imageName  appendFormat:@".jpg"];}NSLog(@"%@",imageName);
0 0