Foundation
NSRange(location length)
NSPoint\CGPoint
NSSize\CGSize
NSRect\CGRect (CGPint CGSize)
2、使用这些CGPointEqualToPoint、CGRectContainsPoint等函数的前提是添加CoreGraphics框架
NSRange r1 = {2, 4}; // 不用NSRange r2 = {.location = 2, .length = 4};// 不用
NSRange r3 = NSMakeRange(2, 4); // 掌握
查找某个字符串在str中的范围
如果找不到,length=0,location=NSNotFound==-1
4、NSString : 不可变字符串
5、NSArray:不可变数组字符串的创建:NSString *s1 = @“jack";NSString *s2 = [[NSString alloc] initWithString:@“jack"];NSString *s3 = [[NSString alloc] initWithFormat:@“age is %d", 10];NSString *s4 = [[NSString alloc] initWithUTF8String:”jack"];const char *cs = [s4 UTF8String];NSString *s5 = [[NSString alloc] initWithContentsOfFile:@“/Users/apple/Desktop/1.txt" encoding:NSUTF8StringEncoding error:nil];NSURL *url = [NSURL fileURLWithPath:@"/Users/apple/Desktop/1.txt"];NSString *s6 = [[NSString alloc] initWithContentsOfURL:url encoding:NSUTF8StringEncoding error:nil];一般都会有一个类方法跟对象方法配对[NSURL URLWithString:<#(NSString *)#>];
[NSString stringWithFormat:@""];
[NSString stringWithContentsOfFile:<#(NSString *)#> encoding:<#(NSStringEncoding)#> error:<#(NSError *__autoreleasing *)#>];
字符串导出
[@“Jack\nJack" writeToFile:@"/Users/apple/Desktop/my.txt" atomically:YES encoding:NSUTF8StringEncoding error:nil];
字符串写入
NSString *str = @"4234234";
NSURL *url = [NSURL fileURLWithPath:@"/Users/apple/Desktop/my2.txt"];
[str writeToURL:url atomically:YES encoding:NSUTF8StringEncoding error:nil];
6、NSSet和NSArray的对比遍历数组(block):enumerateObjectsUsingBlock数组里面不能存放nil值,数组里面只能存放OC对象
1> 共同点
* 都是集合,都能存放多个OC对象
* 只能存放OC对象,不能存放非OC对象类型(基本数据类型:int、char、float等,结构体,枚举)
* 本身都不可变,都有一个可变的子类
7、集合
1.NSArray\NSMutableArray
* 有序
* 快速创建(不可变):@[obj1, obj2, obj3]
* 快速访问元素:数组名[i]
2.NSSet\NSMutableSet
* 无序
3.NSDictionary\NSMutableDictionary
* 无序
* 快速创建(不可变):@{key1 : value1, key2 : value2}
* 快速访问元素:字典名[key]
2> 不同点
* NSArray有顺序,NSSet没有顺序
8、NSDate
9、NSNumber、NSValueNSString -> NSDate:NSString *time = @"2011/09/10 18:56";NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
formatter.dateFormat = @"yyyy/MM/dd HH:mm";
NSDate *date = [formatter dateFromString:time];
NSDate -> NSString:
NSDate *date = [NSDate date];
// 日期格式化类
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
// y 年 M 月 d 日
// m 分 s 秒 H (24)时 h(12)时
formatter.dateFormat = @"yyyy-MM-dd HH:mm:ss";
NSString *str = [formatter stringFromDate:date];
NSNumber之所以能包装基本数据类型为对象,是因为继承了NSValue