设为首页 加入收藏

TOP

ObjectC----字典类和集合类以及快速枚举和OC中的数组排序(二)
2015-11-19 23:07:25 来源: 作者: 【 】 浏览:11
Tags:ObjectC---- 字典 类和 集合 以及 快速 枚举 排序
sex",@"19",@"age", nil];

?

// 字典的快速枚举遍历字典时,遍历的是字典的key;

for (NSString *str in dict) {

// NSString *value = [dict objectForKey:str];

// NSLog(@"%@",value);

NSLog(@"%@",str);// 打印出来的时key

}

?

// 集合的快速枚举

NSMutableSet * mulSet2 = [NSMutableSet setWithObjects:@"1",@"2", nil];

for (NSString *str in mulSet2) {

NSLog(@"%@",str);

}

?

?

?

// =======================================================

?

// sortedArrayUsingSelector会创建一个新的数组,不会影响原数组的元素

// sortUsingSelector不会创建新的数组,而在原数组的基础上调整元素的位置

?

?

// 比较方法的定义,比如下面compareByPrice方法在类中的定义

?

- (NSComparisonResult)compareByPrice:(Student1 *)stu

{

// 返回NSOrderedDescending==1才交换,返回其他两个不交换

?

if (_price > [stu price]) {

return NSOrderedAscending;// ==-1

}

else if(_price == [stu price])

{

return NSOrderedSame;// ==0

}

else {

return NSOrderedDescending;

}

?

}


?

?

NSArray *sortedArray = [students sortedArrayUsingSelector:

@selector(compareByPrice:)];//小括号内是方法名

?

// 在原数组里面排序用sortUsingSelector@selector()方法

?

for (Student1 * stu in sortedArray) {

NSLog(@"%@",stu);

}

?

?

// 第一步:在model类中定义比较方法

// 第二步: 给数组发送排序消息

// 默认是升序

================================================================================

NSLog的description方法的重定义,打印对象时实现自己想要的输出

?

// 打印对象时,会调用对象的description方法

- (NSString *)description

{

?

NSString *str = [NSString stringWithFormat:@"name = %@,age = %d,score = %.2f",_name ,_age,_score];

return str;

}


?

?

?

?

?

?

?

?

?

?

?


首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇ObjectC----几个常用的类 下一篇用c语言实现 计算一个字符串中单..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: