您的位置:首页 > 其它

[示例]创建Student类,输入学生信息并存入字典,将3个存有学生信息的字典存入数组,并计算

2016-01-10 13:56 302 查看
代码:

main:

#import <Foundation/Foundation.h>
#import "Student.h"

int main(int argc, const char * argv[]) {
@autoreleasepool {
Student *stu1=[[Student alloc]initWithName:@"wang" andGender:@"male" andAge:@28];
Student *stu2=[[Student alloc]initWithName:@"yang" andGender:@"female" andAge:@27];
Student *stu3=[[Student alloc]initWithName:@"lang" andGender:@"male" andAge:@26];
NSDictionary *dic1=[NSDictionary dictionaryWithObjectsAndKeys:stu1.name,@"name",stu1.gender,@"gender",stu1.age,@"age", nil];
NSDictionary *dic2=[NSDictionary dictionaryWithObjectsAndKeys:stu2.name,@"name",stu2.gender,@"gender",stu2.age,@"age", nil];
NSDictionary *dic3=[NSDictionary dictionaryWithObjectsAndKeys:stu3.name,@"name",stu3.gender,@"gender",stu3.age,@"age", nil];
NSArray *arr=[NSArray arrayWithObjects:dic1,dic2,dic3, nil];
[Student displayFirstAndLastName:arr];
[Student caculateFirstAndLastAge:arr];
}
return 0;
}


Student.h:

#import <Foundation/Foundation.h>

@interface Student : NSObject
-(instancetype)initWithName:(NSString *)newName andGender:(NSString *)newGender andAge:(NSNumber *)newAge;
+(void)displayFirstAndLastName:(NSArray *)array;
+(void)caculateFirstAndLastAge:(NSArray *)array;
@property NSString *name;
@property NSString *gender;
@property NSNumber *age;
@end


Student.m:

#import "Student.h"

@implementation Student
-(instancetype)initWithName:(NSString *)newName andGender:(NSString *)newGender andAge:(NSNumber *)newAge
{
name=newName;
gender=newGender;
age=newAge;
return self;
}
+(void)displayFirstAndLastName:(NSArray *)array
{
NSDictionary *dicFirst=[array firstObject];
NSDictionary *dicLast=[array lastObject];
NSLog(@"first name:%@,last name:%@",dicFirst[@"name"],dicLast[@"name"]);
}
+(void)caculateFirstAndLastAge:(NSArray *)array
{
NSDictionary *dicFirst=[array firstObject];
NSDictionary *dicLast=[array lastObject];
int firstAge=[dicFirst[@"age"] intValue];
int lastAge=[dicLast[@"age"] intValue];
NSLog(@"Age between first and last:%d",abs(firstAge-lastAge));
}
@synthesize name,gender,age;
@end
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: