zoukankan      html  css  js  c++  java
  • 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(@"王思聪", 27, YES),
                               CreateDict(@"范冰冰", 35, NO),
                               CreateDict(@"马云", 51, YES),
                               CreateDict(@"霍建华", 36, YES),
                               CreateDict(@"赵丽颖", 28, 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:@"41" forKey:kAge];
                }
            }
            for(NSDictionary *dic2 in sortArr){
                    NSLog(@"%@,%@,%@",dic2[kName],maleFemale(dic2[kGender]),dic2[kAge]);
            }
        }
        return 0;
    }
  • 相关阅读:
    mysql存储过程
    Mysql中的触发器
    快速开始、环境搭建、修改包名、新建模块、正式部署
    windows下redis下载安装
    Windows10下mysql 8.0.19 安装配置方法图文教程
    IDEA中安装SVN
    常见页面报错
    Python AttributeError: 'Module' object has no attribute 'STARTF_USESHOWINDOW'
    如何编写一篇高质量的技术博文?学习本文的排名靠前大法
    Linux use apktool problem包体变大GLIBC2.14等问题
  • 原文地址:https://www.cnblogs.com/xzz5211314/p/5120307.html
Copyright © 2011-2022 走看看