------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------
一、结构体1.NSRange
NSRange r = NSMakerange(2,4);
1>查找某个字符串在str中的范围。
2>如果找不到,length=0;
例:
NSString *str = @"i love oc";
NSRange range = [str rangeOfString:@love"];
2.NSPoint\CGPoint
1> CGPoint p1 = NSMakePoint(10,10);
2> CGPoint p1 =CGPointMake(CGFloat x,CGFloat y);//最常用
3> 原点:CGPointZero == CGPointMake(0,0)
3.NSSize\CGSize
1> CGSize s = CGSizeMake(100,10);
2> CGSize s=NSMakeSize(100,10);
4.NSRect\CGRect
1>.CGRect r= CGRectPoint(0,0,100,50);
2>.CGRect r=CGRectMake(0,0,100,50);
5.比较两个点是否相同:CGPointEqualToPoint(x,y)
二、字符串
1.NSString:不可变字符串
(1)子类:NSMutableString:可变字符串
(2)字符串的创建
例:
1> NSString *s1 = @"234";
2> NSString *s2 = [[NSString alloc] initWithString:@'jack"];
3> NSString *3 = [[NSSTring alloc] initWithFormat:@age
is %d",10];
//C字符串转为OC字符串
4> NSString *4 = [[NSString alloc] initWithUTF8String:"jack"];
//OC转为C字符串
const char *cs = [s4 UTF8String];
NSString *s5 = [[NSString alloc] initWithContentsofFile:@"路径"
encoding:NSUTF8StringEncoding error:nil];
NSURL *url = [[NSURL alloc] initWithString:@file:///sers/apple/Desktop/1.txt]
NSString *s6 = [[NSString alloc] initWithContentsOfURL:url
encoding:NSUTF8SringEnoding error:nil];
(3)NSMutableStirng的创建:同NSString
1>[s1 appendString:@"11 12"];
2>[s1 deledteCharactersInRange:NSMakeRange(4,2)];
三、NSArray:
1.NSArry不可变;子类:NSMutableArray:可变
2.OC数组只能存放OC对象,不能存放非OC对象类型
例:
1> NSArray *array = [NSArray array];永远是空数组
2> [NSArray arrayWithObject:@"jack"];
3> nil是数组元素结束的标记NSArray *array1 = [NSArray arrayWithObjects:@"jack",@"rose",nil];
4>OC数组不能存放nil;
5>快速创建:NSArray *array2 = @[@"jack",@"rose",@"324"];
(4)快速遍历
1>id obj代表着数组中的每一个元素
for(id obj in array)
{ NSUInteger i =[array indexOfObject:obj];
NSLog(@"%@",obj);
}
2>每遍历到一个元素,就 会调用一次block。并且当前元素和索引位置当做参数传给block
[array enumerateObjectsUsingBlock:
^(id obj,NSInteger idx,BOOL *stop)
{
NSLog(@"%d-%@",idx ,obj);
}];
(5)NSMutableArray
1>添加元素
[array addObject:[[Person alloc] init]];
[array addObject:@"jack"];
2>删除元素
[array removeAllObjects];
3>删除指定元素
[array removeObject:@"jack"];
四、NSSet:不可变,没有顺序
1.子类:NSMutableSet:可变
2.基本使用
1>NSSet *s = [NSSet set];
2>
NSSet *s2 = [NSSet setWithObjets:@"jack",@"rose",nil];
3>随机拿出一个元素
NSString *str = [s2 anyObject];
五、NSDictioary
1.子类:NSMutableDictioary
1>添加键值对:
[dict setObject:@"jack" forKey:@"name"];
2.基本用法
1>创建NSDictionary *dict = [NSDictionary dictionaryWithObject:(id) forKey:(id<NSCopying>);
2>存储的东西都是键值对。
3>访问:id obj = [dict objectForKey:@"name"];
3.遍历
例1:
NSArray *keys = [dict allKeys];
for(int i=0;i<dict.count;i++)
{
NSString *key = keys[i];
NSString *object = dict[key];
NSLog(@"%@ =%@",key,object);
}
例2:
[dict enumerateKeysAndObjectsUsinBlock:
^(id key,id obj,BOOL *stop){
}];
六、NSDate
1.创建一个时间对象
NSDate *date = [NSDate date];
2.日期格式化类
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
formatter.dateFormate = @"yyyy-MM-dd";
NSString *str = [formatter stringFromDate:date];
七、NSNubmer
NSNumerous *num = [NSNumer numberWithInt:10];
1.Number对象
1>@23
2>@‘A’
3>int age = 100 ;@(age)