课工场-JAVA高级特性编程及实战第1章练习题3答案参考
JAVA高级特性编程及实战第1章练习题3答案参考~
本人菜鸟,一章章地学,
本想在网上搜一下然后对下答案的,
没找着~
本着虔诚的心,把自己做的贴出来~
运行结果是了出来了,过程不知道是否正确
欢迎大佬指正~
题干:编写Java程序,创建学员类Student,并添加姓名、年龄、性别等字段,创建3个ArrayList<T>对象,指定T为Student类,每个ArrayList<T>中添加一些学员对象,再创建HashMap<K,V>对象,以年级名称为键,指定为String类型,指定value类型为ArrayList<Student>,值为存放学员的ArrayList<T>对象,然后从HashMap<K,V>对象中获取某个班级的学员信息并输出。程序输出结果如图所示:
输入班级名称:
三年级一班
三年级一班学生列表:
张三丰 男 7
杨过 男 9
郭靖 男 8
**题目在P26,自己的库里Student已占用,故自己命名的两个类分别是P26_3和Test_p26)。
public class P26_3 <T1,T2,T3>{ private T1 name;private T2 sex;private T3 age; public P26_3 (T1 name,T2 sex,T3 age) {this.name = name;this.age = age;this.sex = sex;}public void setName(T1 name) {this.name = name;}public T1 getName() {return name;}public T3 getAge() {return age;}public void setAge(T3 age) {this.age = age;}public T2 getSex() {return sex;}public void setSex(T2 sex) {this.sex = sex;}}
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Scanner;
import java.util.Set;public class Test_p26 {public static void main (String[] args) {P26_3<String,String,Integer> stu1 = new P26_3<String,String,Integer> ("张三丰","男",7);P26_3<String,String,Integer> stu2 = new P26_3<String,String,Integer>("杨过","男",9);P26_3<String,String,Integer> stu3 = new P26_3<String,String,Integer>("郭靖","女",8);P26_3<String,String,Integer> stu4 = new P26_3<String,String,Integer>("黄蓉","女",10);P26_3<String,String,Integer> stu5 = new P26_3<String,String,Integer>("欧阳峰","男",9);P26_3<String,String,Integer> stu6 = new P26_3<String,String,Integer>("莫念慈","女",8);P26_3<String,String,Integer> stu7 = new P26_3<String,String,Integer>("杨康","男",7);P26_3<String,String,Integer> stu8 = new P26_3<String,String,Integer>("尹志平","男",8);P26_3<String,String,Integer> stu9 = new P26_3<String,String,Integer>("华筝","女",9);ArrayList<P26_3<String,String,Integer>> list1 = new ArrayList<P26_3<String,String,Integer>>();list1.add(stu1);list1.add(stu2);list1.add(stu3);ArrayList<P26_3<String,String,Integer>> list2 = new ArrayList<P26_3<String,String,Integer>>();list2.add(stu4);list2.add(stu5);list2.add(stu6); ArrayList<P26_3<String,String,Integer>> list3= new ArrayList<P26_3<String,String,Integer>>();list3.add(stu7);list3.add(stu8);list3.add(stu9);HashMap <String,ArrayList<P26_3<String,String,Integer>>> map = new HashMap <String,ArrayList<P26_3<String,String,Integer>>>();map.put("三年级一班",list1);map.put("三年级二班",list2);map.put("三年级三班",list3);System.out.println("*****学生名册查询*****");String end;do { System.out.println("输入班级名称:");Scanner input = new Scanner(System.in);String banji = input.next();Set<String> set = map.keySet(); //为什么不能用HashSet<String> set = map.keySet();???if (set.contains(banji)) {System.out.println(banji+"学生列表:");ArrayList<P26_3<String,String,Integer>> list=map.get(banji);for (P26_3<String,String,Integer> obj:list) {System.out.println(obj.getName()+" "+obj.getSex()+" "+obj.getAge());}} else {System.out.println("没有这个班级!");}System.out.println("继续查询/退出查询(y/n):");Scanner input2 = new Scanner(System.in);end = input2.next(); //end不能在循环体内定义} while (end.equals("y")|| end.equals("Y") );System.out.println("*****查询结束*****");System.exit(0);} }
课工场-JAVA高级特性编程及实战第1章练习题3答案参考相关推荐
- Java高级特性编程及事件_java高级特性是什么
详细内容 java高级特性主要有集合框架及泛型,实用类,输入和输出处理,注解与多线程,网络编程与XML技术. 集合框架 是一套性能优良.使用方便的接口和类(位于java.util包中)解决数组在存储上 ...
- Java高级特性增强-多线程
请戳GitHub原文: https://github.com/wangzhiwub... 大数据成神之路系列: 请戳GitHub原文: https://github.com/wangzhiwub... ...
- Java高级特性 - 多线程练习题
第1关:顺序输出 任务描述 本关任务:利用多线程相关知识控制三个线程,依照先后顺序顺序输出. 相关知识(略) 编程要求 请仔细阅读右侧代码,在 Begin-End 区域内进行代码补充,使线程依照先后顺 ...
- 头歌Educoder——Java高级特性 - JDBC(上)
第1关:JDBC连接数据库 任务描述 本关任务:使用jdbc连接数据库并完成创建数据库和创建表的操作. 相关知识 JDBC API提供以下接口和类: DriverManager:此类管理数据库驱动程序 ...
- 十三、Java高级特性 Lambda表达式 | 接口组成更新 | 方法引用 | 函数式接口
文章目录 十三.Java高级特性 1.Lambda表达式 1.1体验Lambda表达式[理解] 1.2Lambda表达式的标准格式[理解] 1.3Lambda表达式练习1[应用] 1.4Lambda表 ...
- 头歌Educoder——Java高级特性 - 多线程练习题
文章目录 第1关:顺序输出 任务描述 相关知识(略) 编程要求 测试说明 代码示例 第2关:售票窗口 任务描述 相关知识(略) 编程要求 测试说明 代码示例 Station.java Task.jav ...
- Educoder–Java高级特性(第一章)- IO流【笔记+参考代码】
Educoder–Java高级特性(第一章)- IO流[笔记+参考代码] 第一关 1.下列关于字节和字符的说法正确的是(BC) A.字节 = 字符 + 编码 B.字符 = 字节 + 编码 C.字节 = ...
- Java学习之java高级特性
From:https://blog.csdn.net/w252064/article/details/79923999 [Java高级特性详解]:https://blog.csdn.net/qq_37 ...
- (小白学JAVA之)Java高级特性知识点梳理
Java高级特性知识点梳理 集合框架和泛型 List接口 ArrayList ArrayList类的常用方法 具体实现步骤 LinkedList LinkedList类的常用方法 具体实现步骤 Set ...
最新文章
- 怎么样在c#程序中放音乐
- java 魔法王国,游历魔法王国
- C语言复习篇之数组与指针
- 选32位 64位 oracle,32位PLSQL配置为64位的Oracle和64位系统
- webpack 原理图_webpack打包原理
- JZOJ 5410. 【NOIP2017提高A组集训10.22】小型耀斑
- UVA11624_Fire!
- scala使用zip合并两个集合为二元组集合
- javaweb(二十一)——JavaWeb的两种开发模式
- STM32之内部FLASH原理
- 画质与性能双重加持,Unity超越游戏的“炫技”
- 谁说 Java 要过时?2017 年 Java 大事件回顾!
- 485. 最大连续1的个数
- python求解微分方程组_用python解一阶微分方程组
- [2019杭电多校第七场][hdu6655]Just Repeat
- Android-广播
- 6款javascript甘特图组件体验
- Android 持续集成基础教程
- Laravel框架介绍与简介
- Java字节码插桩玩法(Javassist)
热门文章
- 广东省英语听说计算机考试系统,广东英语听说考试全真模拟训练
- 来自于DjangoORM查询的蜜汁bug
- bitbucket pipeline - caches
- TAQ服务器npc多久自动交物资,暴雪再次发布怀旧服超长蓝贴:村服有NPC帮交物资!...
- 公司名称变更仅需6步
- python对数据进行分类、文件是csv文件_用Python将处理数据得到的csv文件分类(按顺序)保存...
- (论文)The Economics of Buyer Uncertainty: AdvanceSelling vs. Probabilistic selling
- 【看表情包学Linux】进程的概念 | 进程控制块 PCB | 父进程与子进程 | 进程 ID | task_struct
- 随笔-当曾经的小弟当了你的领导,阁下该如何应对
- 手机1像素线粗_iOS绘制1像素线的正确姿势