[示例]创建Student类,输入学生信息并存入字典,将3个存有学生信息的字典存入数组,并计算
代码:
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:@];
Student *stu2=[[Student alloc]initWithName:@"yang" andGender:@"female" andAge:@];
Student *stu3=[[Student alloc]initWithName:@"lang" andGender:@"male" andAge:@];
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 ;
}
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
[示例]创建Student类,输入学生信息并存入字典,将3个存有学生信息的字典存入数组,并计算的更多相关文章
- Java工具类-输入输出流
输入输出流 1.概念 输入输出流:文件复制,上传 输出流: System.out.println() 写操作,程序将字符流写入到"目的地",比如打印机和文件等 输入流 :Scann ...
- 编写Java应用程序。首先,定义描述学生的类——Student,包括学号(int)、 姓名(String)、年龄(int)等属性;二个方法:Student(int stuNo,String name,int age) 用于对对象的初始化,outPut()用于输出学生信息。其次,再定义一个主类—— TestClass,在主类的main方法中创建多个Student类的对象,使用这些对象来测 试Stud
package zuoye; public class student { int age; String name; int stuNO; void outPut() { System.out.pr ...
- 5.编写Java应用程序。首先,定义描述学生的类——Student,包括学号(int)、 姓名(String)、年龄(int)等属性;二个方法:Student(int stuNo,String name,int age) 用于对对象的初始化,outPut()用于输出学生信息。其次,再定义一个主类—— TestClass,在主类的main方法中创建多个Student类的对象,使用这些对象来测 试St
Student类: package com.bao; public class Student { int stuNo;String name,sex;int age,weight; Student( ...
- 099 01 Android 零基础入门 02 Java面向对象 03 综合案例(学生信息管理) 02 案例分析及实现 03 编写并测试Student类
099 01 Android 零基础入门 02 Java面向对象 03 综合案例(学生信息管理) 02 案例分析及实现 03 编写并测试Student类 本文知识点:编写并测试Subject类 说明: ...
- Day_11【集合】扩展案例3_打印最高分的学员姓名、年龄、成绩,打印10个学生的总成绩和平均分,打印不及格的学员信息及数量
分析以下需求,并用代码实现 1.定义Student类 属性: 姓名:String name 年龄:int age 成绩:int score 行为: 空参构造方法 有参构造方法 set和get方法 to ...
- python 全栈开发,Day116(可迭代对象,type创建动态类,偏函数,面向对象的封装,获取外键数据,组合搜索,领域驱动设计(DDD))
昨日内容回顾 1. 三个类 ChangeList,封装列表页面需要的所有数据. StarkConfig,生成URL和视图对应关系 + 默认配置 AdminSite,用于保存 数据库类 和 处理该类的对 ...
- ArcGIS创建要素类
在使用ARCGIS软件进行工作时,免不了要建立地理数据库和要素类之类的.一下是我创建文件地理数据库并在数据库中创建要素类写相关步骤: 1.启动软件,可以使用ARCCatalog直接进行创建也可以使用A ...
- java从键盘输入学生成绩,找出最高分,并输出学生成绩等级。
/*从键盘输入学生成绩,找出最高分,并输出学生成绩等级:成绩 >=最高分-10 等级为A成绩 >=最高分-20 等级为B成绩 >=最高分-30 等级为C其余为 等级为D 提示:先输入 ...
- day94:flask:Jinjia2模板引擎&flask中的CSRF攻击&Flask-SQLAlchemy的创建模型类和基本的增删改查
目录 1.Jinjia2模板引擎 1.Jinjia2加载模板并传递数据到模板中 2.Jinjia2的模板语句 3.模板中特有的变量和函数 4.模板中内置的过滤器 5.自定义过滤器 6.模板继承 2.在 ...
随机推荐
- 2013 Multi-University Training Contest 3
HDU-4622 Reincarnation 题意:给定一个字符串,有Q次询问,每次询问得出区间[L, R]内有多少个不同的子串. 分析:后缀数组搞,不过hash+dp也能够搞定这题,详解见http: ...
- Linux的ldconfig和ldd用法
ldd 查看程序依赖库 ldd 作用:用来查看程式运行所需的共享库,常用来解决程式因缺少某个库文件而不能运行的一些问题. 示例:查看test程序运行所依赖的库: /opt/app/todeav1/te ...
- oracle中修改表名
<<<备忘>>> answer1: ALTER TABLE old_table_name RENAME TO new_table_name;(大写为系统命令) ...
- Css3_必备10个东西
1.边框圆角(Border Radiuas) 这个是我们在平常很常用的吧,以前我在用div圆角的时候,特别特别的痛苦,不管是用CSS来画圆角,还是用图片来画圆角都不那么容易,但是现在好了,在CSS3中 ...
- chrome web开发工具
顾名思义Chrome开发工具就是一个工具,它允许Web开发人员可以通过浏览器应用程序干预和操作Web页面,也可以通过这个工具调试和测试Web页面或Web应用程序.有了这个工具,你可以做很多有趣的事情: ...
- ubuntu14.04-rocketmq单机搭建
需要环境: jdk(1.6+) git(如果clone源码,需要git,没有git直接下载gar包也行) maven3.x在安装之前确定自己已经安装了jdk:java -version 先获取reck ...
- sensitivity and specificity(敏感性和特异性)
医学.机器学习等等,在统计结果时时长会用到这两个指标来说明数据的特性.
- PC-1500收集整理记
目录 第1章计算器 1 1.1 存储卡 2 1.2 取出"牛皮糖" 4 1.3 打磨键盘按钮 6 1.4 通电 7 第2章底座 10 2.1 去 ...
- html页面,左边点击链接,右边显示内容参考代码。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/stri ...
- 鸟哥的linux私房菜勘误表
博客园地址: http://www.cnblogs.com/jiangxinnju GitHub地址: https://github.com/jiangxincode 知乎地址: https://ww ...