标签:style blog io ar color sp for java on
/* NSRange 范围(location length) NSPoint\CGPoint 点 NSSize\CGSize ui元素的宽高 NSRect\CGRect */ /* NSString 不可变字符串 ->NSMutableString 可变字符串 //NSRange r1 = {2, 4}; // 不用 //NSRange r2 = {.location = 2, .length = 4};// 不用 //NSRange r3 = NSMakeRange(2, 4); // 掌握 NSString *str = @"i love oc"; // 查找某个字符串在str中的范围 // 如果找不到,length=0,location=NSNotFound==-1 NSRange range = [str rangeOfString:@"java"]; NSLog(@"loc = %ld, length=%ld", range.location, range.length); //下面三个都是集合类 NSArray 有序 不可变数组 ->NSMutableArray 可变数组 /* Person *p = [[Person alloc] init]; NSArray *array = @[p,@"jack"]; /* for(int i = 0;i<array.count;i++){ NSLog(@"%@",array[i]); } //id obj 代表着数组中的每一个元素 //int i = 0; for(id obj in array){ //找出obj元素在数组中的位置 NSUInteger i = [array indexOfobject:obj] NSLog(@"%ld - %@", i, obj); //i++ } */ [array enumerateObjectsUsingBlock: //每遍历到一个元素,就会调用一次block //并且当前元素和索引位置当做参数传给block ^(id obj, NSUInteger idx,, BOOL *stop){ NSLog(@"%ld - %@", idx, obj); if(idx == 1){ //停止遍历 *stop = YES; } }]; */ NSSet 无序 不可变 ->NSMutableSet 可变 NSMutableSet *s = [NSMutableSet set]; [s addObject:@"adf"]; NSDictionary 字典 ->NSMutableDictionary //字典是无序 //允许value相同,但key不能相同 NSDictionary *d = @{@"name" : @"jack",@"adrress" :@"乐山"}; NSMutableDictionary *dict = [NSMutableDictionary dictionary]; [dict setObject:@"jack" forKey:@"name"]; [dict setObject:@"乐山" forKey:@"adrress"]; [dict enumerateKeysAndObjectsUsingBlock: ^(id key, id obj, BOOL *stop){ NSLog(@"%@ - %@", key, obj); } /* 字典: key ------> value 索引 ------> 文字内容 里面存储的东西都是键值对 */ NSNumber 之所以能包装基本数据类型为对象,是因为继承了NSValue //将各种基本数据类型包装成NSNumber对象 @20; @10.5; @YES; @‘A‘;//NSNumber对象 @"A";//NSString对象 //将age变量包装秤NSNumber对象 int age = 100; @(age); NSValue // 结构体--->OC对象 CGPoint p = CGPointMake(10, 10); // 将结构体转为Value对象 NSValue *value = [NSValue valueWithPoint:p]; // 将value转为对应的结构体 // [value pointValue]; NSArray *array = @[value ]; NSDate int main() { // 09/10/2011 NSString *time = @"2011/09/10 18:56"; NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; formatter.dateFormat = @"yyyy/MM/dd HH:mm"; NSDate *date = [formatter dateFromString:time]; NSLog(@"%@", date); return 0; } void date2string() { 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]; NSLog(@"%@", str); } NSObject */
NSSet 和 NSArray的对比
1)共同点
*都是集合,都能存放多个OC对象
*只能存放OC对象,不能存放非OC对象类型(基本数据类型:int、char、float等,结构体,枚举)
*本身都是不可变,都有一个可变的子类
2)不同点
*NSArray有顺序,NSSet没有顺序
标签:style blog io ar color sp for java on
原文地址:http://www.cnblogs.com/ZhangYuGe/p/4145879.html