Foundation补充

1常用结构体:

NSRange、NSPoint(CGPoint)、NSSize(CGSize)、NSRect(CGRect)

2 NSRange: 字符串中有一个方法rangeOfString:str可以获取str在字符串中的位置,如果找不到length为0,location为NSNotFount(%d  -1)

3 CGPointMake 和NSMakePoint是等价的

4 结构体转为字符串,NSStringFromPoint()

5 CGPointZero相当于0,0

6 CGPointEqualToPoint(point1,point2) 比较两个点是否相同

7 CGRectContainsPoint判断一个点是否在rect范围内

 

8 常用类:

NSString NSArray NSSet NSDictionary NSDate…

9 appendString可变字符串拼接

deleteCharactersInRange 可变字符串删除,该方法通常与rangeOfString一起使用

characterAtIndex:NSUInteger 根据下标拿出字符

componentseparatedByString:NSString 字符串分隔

10 stringByAppendingString不可变字符串拼接新的字符串

11 访问数组中元素的方式array[index]

12 OC数组快速创建NSArray:@[]

13 indexOfObject:id 找出id在数组中的位置

14 数组遍历使用block:

,每遍历到一个元素,就会调用block,并且当前元素和索引位置当作参数传给block

 enumerateObjectsUsingBlock:

[array enumerateObjectsUsingBlock:

^(id obj, NSUInteger idx, BOOL *stop)

{

     NSLog(@”%@--%d”,obj,idx);

     If(idx == 0)

     {

         *stop = YES; // 停止遍历

}

}

];

15 NSFileManager是单粒类,只会创建出一个对象。

16 pathExtension 获取字符串的扩展名

17 字符串变小写 lowercaseString

18 NSSet 中anyObject表示随机一个对象

19 dictionary[@"xx"];快速访问字典元素  count,返回键值对个数

20 中文在计算机中占3个字节

21 字典是无序的,也就是通过allKeys返回的key数组是无序的

22 字典不允许有相同的key,

23 遍历字典快速方法enumerateKeysAndObjectsUsingBlock

24 数组persons[1][@"qq"],表示取出下标1对应的字典,在取出字典中key对应的数据

25 @20 表示将20包装成NSNumber 对象,是编译器特性

@'a',字符转 NSNumber对象  @"a" ,字符串

26 int age = 12;  @(age)  把变量age包装成NSNumber对象

27 NSNumber之所以能包装基本数据类型,是因为继承了NSValue

28 将结构体包装成NSValue对象,valueWithPoint…

解包:pointValue

29 NSDateFormatter日期格式对象,dateFormat格式日期,stringFromDate:将日期转为字符串,dateFromString:将字符串转为日期

PS:摘自李明杰的视频教程,在此感谢李老师非常详细的讲解!

原文地址:https://www.cnblogs.com/yangmx/p/3565761.html