1.系统类名前缀的含义
—–UI前缀,属于UIKit的框架,顾名思义,涉及到iphone的ui的东东,比如说UIView,UIViewController等等。构成了iphone上的程序主框架,就理解成iphone上特定框架吧。
—–NS前缀,NS是NextStep的缩写,框架我还不好确定,不过NSTimer,NSString这些类,可以算是一般的工具类,最最关键的,NS开头的类,都能响应经典的alloc,init,release这些消息(可以简单理解成函数,不过在objective-c里,叫消息),可以给空指针发消息,不会有任何的副作用。
—–CF前缀,属于Core Foundation框架,算是底层实现。很多NS的类,在CF里都能找到其实现类。比如说:NSxxx,在CF中可能就对应着CFxxxRef。在CF中,所有类的示例都是一个Ref(就是一个数),当这个Ref是空的时候,再调用CF的一些方法,就会引起严重错误。
当引起严重错误的时候,在ide的调试窗口中,会断点到到汇编代码,点继续运行后,还是会跳到相同地方。原因暂时还不明。
2.NSString截取字符串的三个方法
NSString *str = @"12345";
①NSString *subString2 = [str substringFromIndex:1]; //@"2345"
②NSString *subString13 = [str substringToIndex:4]; //@"1234“
③NSRange range4 = NSMakeRange(1, 4); NSString *subString34 = [str substringWithRange:range4]; //@"2345”
NSArray *arr = [str componentsSeparatedByString:@"code="]; |
|