objective-c  根据身份证 计算出年…

本文介绍了一个使用 Objective-C 编写的人员类(Person),该类包括姓名、年龄、性别和身份证号码等属性,并实现了初始化方法及打印个人信息的功能。通过解析身份证号码获取年龄和性别。

1..h

#import <Foundation/Foundation.h>


@interface Person : NSObject

{

    NSString * _name;

    int _age;

    NSString * _sex;

    NSString * _idCard;

}

@property (assign,nonatomic) NSString * _name,*_sex,*_idCard;

@property (assign,nonatomic)int _age;

-(id)initWithName:(NSString*)newName Age:(int)newAge Sex:(NSString *)newSex IdCard:(NSString *)newIdCard;

-(void)print;

-(NSString *)name;

-(int)age;

-(NSString *)sex;

-(NSString *)idCard;

-(NSString *)description;



@end



2 .m

//

//  Person.m

//  Oc_Student1

//

//  Created by Ibokan on 12-7-24.

//  Copyright (c) 2012年 __MyCompanyName__. All rights reserved.

//


#import "Person.h"


@implementation Person

@synthesize _name,_sex,_idCard;

@synthesize  _age;

-(id)initWithName:(NSString *)newName Age:(int)newAge Sex:(NSString *)newSex IdCard:(NSString *)newIdCard

{

    self=[super init];

    if(self)

    {  

        _name=newName;

        _idCard=newIdCard;

        int card=  (2012-[[newIdCard substringWithRange:NSMakeRange(6,4)] intValue]);

        _age=card;

        int sex1=[[newIdCard substringWithRange:NSMakeRange(16,1)] intValue];

       

        if(sex1%2!=0)

        {

            _sex=newSex;

        }

        else

       

            newSex=@"女";

            _sex=newSex;

         

    }

    return self;

}

-(NSString *)name

{

    return _name;

}

-(int)age

{

    return _age;

}

-(NSString *)sex

{

    return _sex;

}

-(NSString *)idCard                  

{

    return _idCard;

}

-(void)print

{

    NSLog(@"========================================================");

    NSLog(@"   身份证号:%@  %@ 性别:%@   今年:%i",_idCard,_name,_sex,_age);

    NSLog(@"========================================================");

}

-(NSString *)description

{

    NSString * pers=[[NSString alloc]initWithFormat:@"身份证号:%@  %@ 性别:%@   今年:%i",_idCard,_name,_sex,_age];

    return pers;

}


@end


3.main

#import <Foundation/Foundation.h>


#import "Person.h"

int main (int argc, const char * argv[])

{


    @autoreleasepool {

        Person *person=[[Person alloc]initWithName:@"张某某" Age:(0) Sex:@"男" IdCard:@"372922199125963565"];


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

   

        [person print];


    }

    return 0;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值