类的判断方法:
-
isKindOfClass:
判断指定的对象是否是某一个类,或者是某一个类的子类 -
isMemberOfClass:
判断指定的对象是否是当前指定的类的实例 -
isSubclassOfClass:
判断指定的对象是否是某一个类的子类
类加载方法:
-
load:
只要程序启动就会将所有类的代码加载到内存中,放到代码区
load方法会在当前类被加载到内存的时候调用,有且仅会调用一次 -
initialize:
当前类第一次被使用的时候就会调用(创建类对象的时候)
initialize方法在整个程序的运行过程中只会被调用一次,无论你使用多少次这个类都只会调用一次
加载路径方法:
-
NSURL URLWithString:
用该方法加载本地路径,可以省略主机地址,但路径中最前面的/
不能省略,/
代表根路径 -
NSURL fileURLWithPath:
用该方法加载本地路径,可以省略file://
一般加载本地路径时用该方法,路径中包含中文也可以进行访问
注意: 如果URL中包含中文,又非不通过fileURLWithPath
创建,也可以编译
如果想编译就必须在创建URL之前先对字符串中的中文进行处理,进行百分号编码
NSString *path = @"file://192.168.199.199/Users/NJ-Lee/Desktop/lnj.txt";
path = @"file:///Users/NJ-Lee/Desktop/lnj.txt";
NSURL *url = [NSURL URLWithString:path];
NSString *path = @"/Users/NJ-Lee/Desktop/未命名文件夹/lnj.txt";
NSURL *url = [NSURL fileURLWithPath:path];
NSString *path = @"file:///Users/NJ-Lee/Desktop/未命名文件夹/lnj.txt";
path = [path stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
字符串的常用方法:
1.字符串之间的比较方法:
-
isEqualToString:
比较的是两个字符串的"地址"是否相同 -
compare:
比较的是字符串的大小,也就是ASCII值 -
caseInsensitiveCompare:
忽略大小写进行比较
2.字符串的搜索方法:
-
hasPrefix:
判断是否以什么开头 -
hasSuffix:
判断是否以什么结尾 -
rangeOfString:
判断字符串中是否包含什么内容,如果包含该字符串内容, 那么就会返回该字符串的起始位置以及该字符串的长度 -
rangeOfString:options:
可以选择查找的顺序(从左至右还是从右至左)
3.字符串的截取方法:
-
substringWithRange:
返回的是截取后的一个新的字符串 -
substringFromIndex:
从什么地方开始截取, 一直截取到最后 -
substringToIndex:
从开头开始截取, 一直截取到什么位置
4.字符串的替换方法:
-
stringByReplacingOccurrencesOfString: withString:
OccurrencesOfString:要替换谁
withString:用谁替换 -
stringByTrimmingCharactersInSet:
替换首尾内容
5.字符串与路径:
-
isAbsolutePath:
判断是否是绝对路径 -
lastPathComponent:
获取文件路径中的最后一个目录 -
stringByDeletingLastPathComponent:
删除文件路径中的最后一个目录,本质就是删除最后一个 / 后面的内容, 包括 / 也会被删除 -
stringByAppendingPathComponent:
给文件路径添加一个目录,本质就是在字符串的末尾加上一个/
和指定的内容
注意:如果路径后面已经有了 / , 那么就不会添加了;如果路径后面有多个 / , 那么会自动删除多余的 / , 只保留一个 -
pathExtension:
获取路径中文件的扩展名;本质就是从字符串的末尾开始查找 . , 截取第一个 . 后面的内容 -
stringByDeletingPathExtension:
删除路径中文件的扩展名;本质就是从字符串的末尾开始查找 . ,删除第一个 . 和 . 后面的内容 -
stringByAppendingPathExtension:
给文件路径添加一个扩展名;本质就是在字符串的末尾加上一个 . 和指定的内容
6.字符串的转换:
-
uppercaseString:
将字符串转换为大写 -
lowercaseString:
将字符串转换为小写 -
capitalizedString:
将字符串的首字符转换为大写
数组常用方法:
1.给NSArray中的所有对象方法发消息:
-
makeObjectsPerformSelector:
如果使用OC数组存储对象, 可以调用OC数组的方法让数组中所有的元素都执行指定的方法
注意:如果数组中保存的不是相同类型的数据, 并且没有相同的方法, 那么会报错
2.对数组内的元素进行排序:
-
sortedArrayUsingSelector:
想使用compare方法对数组中的元素进行排序, 那么数组中的元素必须是Foundation框架中的对象, 也就是说不能是自定义对象 -
sortedArrayWithOptions: usingComparator:
比较自定义对象排序;
该方法默认会按照升序排序
NSArray *arr = @[@10, @20, @5, @7, @15];
NSArray *newArr = [arr sortedArrayUsingSelector:@selector(compare:)];
Person *p1 = [Person new];
p1.age = 10;
Person *p2 = [Person new];
p2.age = 20;
Person *p3 = [Person new];
p3.age = 5;
Person *p4 = [Person new];
p4.age = 7;
NSArray *arr = @[p1, p2, p3, p4];
NSArray *newArr = [arr sortedArrayWithOptions:NSSortStable usingComparator:^NSComparisonResult(Person *obj1, Person *obj2) {
return obj1.age > obj2.age;
}];
3.NSArray和NSString之间转换方法:
-
componentsJoinedByString:
将数组中的元素拼接成字符串 -
componentsSeparatedByString:
将字符串通过某个分隔符转换成数组,也叫字符串切割
网友评论