iOS 第七期考核题(字符串以及字典的使用 数组内容转换成字符串)

本文详细介绍了如何通过解析身份证号的最后两位来判断性别,并通过计算与当前日期对比得出年龄的方法。同时,展示了如何对字典的键进行排序并输出对应的值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

//1.以下是身份证号,输出身份证人的性别,年龄
      //  NSString *idCard=@210423198809040427;
        //身份证倒数#2位是偶数则为女生
        NSString *idCard=@"210423198809040427";
        int sex1=[[idCard substringWithRange:NSMakeRange(16, 1)] intValue];
        if((sex1%2)==0){
            NSLog(@"性别:女");
        }else{
            NSLog(@"性别:男");
        }
        
        int age1=[[idCard substringWithRange:NSMakeRange(6, 4)] intValue];
        NSDate *date = [NSDate date];//这个是NSDate类型的日期,所要获取的年月日都放在这里;
        NSCalendar *cal = [NSCalendar currentCalendar];
        NSUInteger unitFlags = NSCalendarUnitYear;//这句是说你要获取日期的元素有哪些
        NSDateComponents *d = [cal components:unitFlags fromDate:date];//把要从date中获取的unitFlags标示的日期元素存放在NSDateComponents类型的d里面;
        //然后就可以从d中获取具体的年月日了;
        NSInteger year = [d year];
        NSUInteger age2=year-age1+1;
        NSLog(@"年龄 %ld",age2);
    //2.将字典的key从Z->A排序,按排序后的key的顺序,输出value,将value按字符串输出
        NSDictionary *dict=@{@"R":@"e",
                             @"T":@"e",
                             @"D":@"b",
                             @"S":@"u",
                             @"K":@"a",
                             @"A":@"s",
                             @"O":@" ",
                             @"N":@"p",
                             @"B":@"b",
                             @"J":@"u",
                             @"F":@" ",
                             @"U":@"t",
                             @"H":@"l",
                             @"E":@"j",
                             @"Z":@"s",
                             
                             };
        //获取所有的key值放在数组内
        NSArray *keys=[dict allKeys];
        //对数组内的key值进行排序(降序)
        NSArray *sortkeys=[keys sortedArrayUsingComparator:^NSComparisonResult(id obj1,id obj2){
            return [obj2 compare: obj1];
        }];
        //根据key值输出value值
        NSMutableArray *mutabarr=[NSMutableArray array];
        for(id key in sortkeys){
            id obj=[dict objectForKey:key];
            //NSLog(@"%@",obj);
            [mutabarr addObject:obj];
        }
     //以字符串的形式输出value值 NSString
*str=[mutabarr componentsJoinedByString:@""]; NSLog(@"%@",str); }

 

转载于:https://www.cnblogs.com/jiangyicheng/p/5113968.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值