直接上代码:
/*
* 快速枚举
*
*/
NSLog( @"++++++++++++++++++" ) ;
NSArray *testArray = @[@1, @2, @3, @4, @5] ;
//通过快速枚举来遍历数组元素
for (NSArray *object in testArray) {
NSLog( @"%@", object ) ;
}
//不确定类型时用 id
for ( id object in testArray ) {
NSLog( @"%@", object ) ;
}
//快速遍历集合
for ( id object in set1 ) {
NSLog( @"%@", object ) ;
}
//快速遍历字典(得到的是字典的键)
//直接遍历字典得到的是字典的每一个键,可以通过遍历得到的键去获取对应的值
for ( id object in dic1 ) {
NSLog( @"%@", object ) ;
}
//dic1[key]可得到对应value,这是一个语法糖,相当于[dic1 objectForKey:key]
for ( NSString *key in dic1) {
NSLog( @"dictionary[%@]:%@", key, dic1[key] ) ;
}
/*
* 数组排序
*
*/
//注意初始化数组时,所有数组元素对象的类型相同,如下会出错:@[@1, @2, @"5", @3, @4]
NSArray *array1 = @[@1, @2, @5, @3, @4] ;
//使用数组排序方法对数组进行升序排序
NSArray *resultArray = [array1 sortedArrayUsingSelector:@selector(compare:)] ;
NSLog( @"%@", resultArray ) ;
Student *stu1 = [Student studentWithName:@"wang" score:@85] ;
Student *stu2 = [Student studentWithName:@"zhen" score:@95] ;
Student *stu3 = [Student studentWithName:@"gang" score:@65] ;
NSMutableArray *stus = [NSMutableArray array] ;
[stus addObject:stu1] ;
[stus addObject:stu2] ;
[stus addObject:stu3] ;
[stus sortedArrayUsingSelector:@selector(scoreAscending:)] ;
NSLog( @"%@", stus ) ;
[stus sortedArrayUsingSelector:@selector(scoreDescending:)] ;
NSLog( @"%@", stus ) ;
[stus sortedArrayUsingSelector:@selector(nameAscending:)] ;
NSLog( @"%@", stus ) ;
[stus sortedArrayUsingSelector:@selector(nameDescending:)] ;
NSLog( @"%@", stus ) ;
时间: 2024-10-09 01:24:31