[示例]NSDictionary编程题-字典的排序应用(iOS6班)
代码:
#import <Foundation/Foundation.h> static NSString * const kName = @"name";
static NSString * const kAge = @"age";
static NSString * const kGender = @"gender"; inline static NSMutableDictionary *CreateDict(NSString *name, NSInteger age, BOOL isMale){
NSMutableDictionary *dict = [[NSMutableDictionary alloc] initWithDictionary:@{kName:name,kAge :@(age),kGender :@(isMale)}];
return dict;
} NSString *maleFemale(id sex){
if([sex isEqual:@YES]){
return @"男性";
}
else{
return @"女性";
}
} int main(int argc, const char * argv[]) {
@autoreleasepool {
NSArray *array = @[CreateDict(@"王思聪", , YES),
CreateDict(@"范冰冰", , NO),
CreateDict(@"马云", , YES),
CreateDict(@"霍建华", , YES),
CreateDict(@"赵丽颖", , NO)];
//第1题 请按照年龄的升序排序输出,输出样式为:王思聪,男性,今年27岁
NSSortDescriptor *sortWithAge=[[NSSortDescriptor alloc]initWithKey:kAge ascending:YES];
NSArray *eleSort=[NSArray arrayWithObjects:sortWithAge,nil];
NSArray *sortArr=[array sortedArrayUsingDescriptors:eleSort];
for(NSDictionary *dic in sortArr){
NSLog(@"%@,%@,今年%@岁",dic[@"name"],maleFemale(dic[kGender]),dic[@"age"]);
}
//第2题 请输入女性信息,输出样式为:范冰冰大美女,今年35岁
for(NSDictionary *dic1 in sortArr){
if([dic1[kGender] isEqual:@NO]){
NSLog(@"%@大美女,今年%@岁",dic1[kName],dic1[kAge]);
}
}
//第3题 请将“马云”的年龄改为41岁
NSMutableArray *mutArr=[NSMutableArray arrayWithArray:array];
for(NSDictionary *dic in mutArr) {
if([dic[kName] isEqualToString:@"马云"]){
[dic setValue:@"" forKey:kAge];
}
}
for(NSDictionary *dic2 in sortArr){
NSLog(@"%@,%@,%@",dic2[kName],maleFemale(dic2[kGender]),dic2[kAge]);
}
}
return ;
}
[示例]NSDictionary编程题-字典的排序应用(iOS6班)的更多相关文章
- [示例]NSDictionary编程题-字典的排序应用(iOS5班)
代码? #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepo ...
- [示例]NSDictionary编程题-字典的排序应用(iOS7班)
代码: #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepo ...
- [示例]NSDictionary编程题-字典的排序应用(iOS4班)
代码: #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepo ...
- 转载:2017百度春季实习生五道编程题[全AC]
装载至:https://blog.csdn.net/zmdsjtu/article/details/70880761 1[编程题]买帽子 时间限制:1秒空间限制:32768K度度熊想去商场买一顶帽子, ...
- C算法编程题(一)扑克牌发牌
前言 上周写<我的编程开始(C)>这篇文章的时候,说过有时间的话会写些算法编程的题目,可能是这两天周末过的太舒适了,忘记写了.下班了,还没回去,闲来无事就写下吧. 因为写C++的编程题和其 ...
- 网易2018校招内推编程题-堆棋子-C++实现
链接:https://www.nowcoder.com/questionTerminal/27f3672f17f94a289f3de86b69f8a25b来源:牛客网 [编程题]堆棋子 热度指数:14 ...
- C/C++笔试题(编程题)
面试过程中遇到的编程题整理,于此备录.分享,共勉.(持续更新中......欢迎补充) (1)用户输入M, N值,从1至N开始顺序循环数数,每数到M输出该数值,直至全部输出.写出C程序. 程序代码如下: ...
- JS编程题练习
JS编程题练习 1. 两个数组合并成一个数组排序返回 先依次比较两个数组,按照小的就传入新的数组.当这次比较完之后可能有一个数组的长度很长,留下一些数组,然后在新数组的末尾插入即可. function ...
- C算法编程题(五)“E”的变换
前言 上一篇<C算法编程题(四)上三角> 插几句话,说说最近自己的状态,人家都说程序员经常失眠什么的,但是这几个月来,我从没有失眠过,当然是过了分手那段时期.每天的工作很忙,一个任务接一个 ...
随机推荐
- 期权交易基本原理——买进看跌期权(Long Put),卖出看跌期权(Short Put)
期权交易基本原理--买进看跌期权(Long Put),卖出看跌期权(Short Put) 来源:中电投先融期货-青岛 浏览:13508次2014-07-25 14:25:55 3 第三节 买进看跌期权 ...
- 12 Using_explain_plan
The row source tree is the core of the execution plan. The tree shows the following information: An ...
- 使用xml方式定义补间动画
在res下创建一个目录 anim目录 public class MainActivity extends Activity { private ImageView iv; @Override prot ...
- Linux socket编程应用学习笔记
参考这个系列吧 http://www.cnblogs.com/wunaozai/tag/%E7%BD%91%E7%BB%9C%E7%BC%96%E7%A8%8B/default.html?page=2 ...
- 转:一个Sqrt函数引发的血案
转自:http://www.cnblogs.com/pkuoliver/archive/2010/10/06/1844725.html 源码下载地址:http://diducoder.com/sotr ...
- 转:SQL的内连接与外连接
参考:http://www.cuiyongjian.com/post-130.html 在oracle的SQL语句常用的连接有内连接(inner join),外连接(outer join)等,内连接又 ...
- java实现数据库连接池
package com.kyo.connection; import java.sql.Connection; import java.sql.DatabaseMetaData; import jav ...
- OpenGL的glScalef缩放变换函数详解
glScalef是openGL中的模型缩放函数,就是把当前矩阵与一个表示延各个轴对物体进行拉伸.压缩.反射的矩阵相乘.这个物体的每个点的x,y,z坐标与对应的xyz参数相乘. 先看函数定义void g ...
- Jni碰到的一个异常
Java与C++都有String对象,而c没有,只有char类型,所以在向C传入String类型的时候,如何处理需要注意一点 jstring Java_com_skymaster_hs_test4_M ...
- Perl 语法 - 基础
perl语言的核心是正则表达式,在文本处理上非常有优势,与python类似,但语法不同,perl的语法很灵活,用多了才会觉得好用. 常用知识点总结: perl语法类似于C语言(perl源于Unix), ...