- <李>
<强>基础框架强>
李>基础框架是所有iOS/MacOSX开发的基础框架
最初版本由NextStep公司开发,故其前缀为NS
该框架中主要包含:
,,,,基本数据类型
,,,,常用函数
,,,,结构体及相关操作函数
,,,,枚举类型
,,,,功能丰富的类
头文件:
@import & lt;基?Foundation.h>
- <李>
<强>数值类型及数值对象强>
李>整型:
,,类型:使用NSInteger了NSUInteger
,,,,宏定义:NSIntegerMax, NSIntegerMin, NSUIntegerMax
浮点类型:(实型)
,,,,类型:CGFloat
,,,,宏定义:CGFLOAT_MAX, CGFLOAT_MIN
…
这些数值类型并不是objective - c的对象,也就是说不能进行很多面向对象的操作
数值对象:
,,,, NSNumber将各种数值类型数据封装成objective - c对象
字面值初始化:
,,,,利用@关键字
NSNumber * num1 =, @10; NSNumber * num2 =, @YES; NSNumber * num3 =, @ ' A '; NSNumber * num4 =, @3.14; int age =, 10; NSNumber * num5 =, @(年龄);
数值对象的构造方法:
+,(NSNumber *) numberWithBool: (BOOL)值 +,(NSNumber *) numberWithChar: (char)值 +,(NSNumber *) numberWithDouble:(双)值 +,(NSNumber *) numberWithFloat:(浮动)值 +,(NSNumber *) numberWithInteger: (NSInteger)值 +,(NSNumber *) numberWithLong:(长)的价值 …
- <李>
<强>几何数据结构体强>
李>此部分介绍的结构体,不是类,用描述一些几何数据
NSRange表示范围:
typedef struct _NSRange { ,,,NSUInteger 位置;,,,,,//表示起始范围 ,,,NSUInteger 长度;,,,,,,,//表示范围长度 },NSRange;
NSRange r1 =,{, 2、4},,,,,,,,,//不推荐 NSRange r2 =, {, .location=2, . length=4,},,//不推荐 NSRange r3 =, NSMakeRange(2, 4),,,,,,//推荐使用这种方式
CGSize表示二维尺寸:
struct CGSize { ,,,CGFloat 宽度;,,,,,//表示宽度 ,,,CGFloat 高度;,,,,//表示高度 }; typedef struct  CGSize CGSize;
CGSize s1 =, CGSizeMake(40岁,60岁); NSLog (@ % @,, NSStringFromCGSize (s1));
CGPoint表示位置
struct CGPoint { ,,,CGFloat x,,,,,, CGFloat y; }; typedef struct  CGPoint CGPoint;
CGPoint p1 =, CGPointMake (10,, 10); NSLog (@ % @,, NSStringFromCGPoint (p1));
CGRect中表示矩形的尺寸及位置
struct CGRect { ,,,CGPoint 来源; ,,,CGSize 规模; }; typedef struct  CGRect CGRect中;
CGRect r1 =, CGRectMake(0, 0, 100年,50); NSLog (@ % @,, NSStringFromCGRect (r1));
其他常用函数
//比较两个点是否相同 bool CGPointEqualToPoint (CGPoint point1, CGPoint 卷帘窗);//比较两个尺寸是否相同 bool CGSizeEqualToSize (CGSize size1, CGSize size2);//比价两个矩形是否相同 bool CGRectEqualToRect (CGRect 通过rect1, CGRect rect2);//判断矩形中是否包含某个点 bool CGRectContainsPoint (CGRect 矩形,CGPoint 点),
,,,
这些几何数据类型,都有表示0的常量
,,,, CGPointZero, CGSizeZero CGRectZero
- <李>
<强>几何数据类型封装成对象强>
李>数值类型可以封装到NSNumber对象中
这些常用的结构体可以封装到NSValue对象中,NSValue是NSNumber的父类
+,(NSValue *) valueWithRange: (NSRange)范围内 +,(NSValue *) valueWithCGPoint: (CGPoint)点 +,(NSValue *) valueWithCGSize: (CGSize)的大小 +,(NSValue *) valueWithCGRect:矩形(CGRect中) @ property(只读),NSRange rangeValue 安康;CGPointValue (CGPoint) 安康;CGSizeValue (CGSize) null基础框架(1)数值对象与结构体对象