【objc】Foundation Kit
2012-08-29 12:32 Loull 阅读(261) 评论(0) 编辑 收藏 举报Cocoa Foundation框架有很多面向数据的低级类和数据类型,这样的类型会有更高的效率。
一、范围NSRange
typedef struct _NSRange { unsigned int location; unsigned int length; } NSRange;
1、NSRange range;
range.location = 17;
range.length = 4;
2、NSRange range = {17, 4};
3、NSRange range = NSMakeRange (17, 4);
二、几种数据类型
1、
typedef struct _NSPoint { float x; float y; } NSPoint;
2、
typedef struct _NSSize { float width; float height; } NSSize;
3、
typedef struct _NSRect { NSPoint origin; NSSize size; } NSRect;
三、字符串
1、创建字符串
+ (id) stringWithFormat: (NSString *) format, ...;
+ 表示是类方法, 跟java的static方法很像
… 表示接受多个参数
NSString *mString; mString = [NSString stringWithFormat: @"your height is %d feed, %d inches", 5,11];
2、大小
- (unsigned int) length;
3、比较
- (BOOL) isEqualToString: (NSString *) aString; - (NSComparionResault) compare: (NSString *) string; - (NSComarionResault) compare: (NSSting *) string option: (unsigned) mask; if ([thing1 compare: thing2 option: NSCaseInsensitiveSearch | NSNumericSeacch] ==NSOrderedSame) { NSLog (@"They match"); }
4、包含字符串
- (BOOL) hasPreifx: (NSString *) aString; - (BOOL) hassuffix: (NSString *) aString; - (NSRange) rangeOfString: (NSString *) aString;//若没有则返回NSNotFound
四、可变字符串NSMutableString
+ (id) stringWithCapacity: (unsigned) capacity;
五、集合
1、不可变数组NSArray:可以存放任意对象,不能存放基本数据类型或随机指针,不能存储nil(对象的零值或null值)
2、可变数组NSMutableArray
3、枚举NSEnumerator
4、不可变字典NSDictionary:与map比较类似,散列表
可变字典NSMutableString
六、数值
1、NSNumber:基本类型的包装类,不支持自动装箱auto-boxing
2、NSValue::可以包装任意值
3、NSNull:不能再集合中放入nil,但可以放入NSNull消除歧义
[NSNull null]总是返回一样的数值,可以使用==与其他值进行比较。