Java集合框架实验报告

上传人:人*** 文档编号:470325666 上传时间:2024-02-05 格式:DOC 页数:16 大小:136KB
返回 下载 相关 举报
Java集合框架实验报告_第1页
第1页 / 共16页
Java集合框架实验报告_第2页
第2页 / 共16页
Java集合框架实验报告_第3页
第3页 / 共16页
Java集合框架实验报告_第4页
第4页 / 共16页
Java集合框架实验报告_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《Java集合框架实验报告》由会员分享,可在线阅读,更多相关《Java集合框架实验报告(16页珍藏版)》请在金锄头文库上搜索。

1、浙江大学城市学院实验报告课程名称 Java高级程序设计 实验项目名称 Java集合框架实验 学生姓名 专业班级 学号 一、实验目的1. 理解Java集合框架的特点、接口与类之间的关系2. 掌握Java集合框架的List接口,以及List接口的重要实现类LinkedList、ArrayList3. 掌握Java集合框架的Set、SortedSet接口,以及重要实现类HashSet与TreeSet4. 掌握Java集合框架的Map、SortedMap接口及其重要实现类HashMap、TreeMap5. 掌握Java集合框架的Collection与Iterator接口的特点与使用方式 二、实验内容1

2、、 使用List管理对象集合2、 使用Map管理对象集合3、 使用Set管理对象集合4、 设计一个自定义的集合类三、实验步骤1、 在Eclipse中新建工程(即项目)2、 使用List管理对象集合1) 新建一个包listExample2) 在这个包中新建三个类:Student类,StudentList类,StudentListTest类.参考代码: Student.java, StudentList。java,StudentListTest.java3) 完善上面三个类,相关要求参考源代码程序的注释,即根据要求修改源代码程序,给出具体的实现代码(不使用泛型类).void addStudent(

3、Student student)/添加一个学生对象boolean a=true;for(int i=0;istudents.size();i+)Student stud = (Student)students.get(i);if(stud.getId().equalsIgnoreCase(student.getId())a=false;if(a=true)students。add(student);/修改代码,保证students集合中所有学生对象的id号唯一 void deleteStudentById(String id)/根据学号删除学生对象 for(int i=0;istudents.

4、size();i+)Student stud = (Student)students.get(i);if(stud.getId().equalsIgnoreCase(id)students。remove(stud); void deleteStudentByName(String name)/根据姓名删除学生对象 for(int i=0;istudents.size();i+)Student stud = (Student)students.get(i);if(stud。getName().equalsIgnoreCase(name)students。remove(stud); void de

5、leteStudentByAge(int age)/根据年龄删除学生对象 for(int i=0;istudents。size();i+)Student stud = (Student)students.get(i);if(stud。getAge()=age)students.remove(stud);Student findByName(String name)int a=0;for(int i=0;istudents.size();i+)Student stud = (Student)students。get(i);if(stud.getName().equalsIgnoreCase(na

6、me)a+;Student st=new Studenta;int b=0;for(int i=0;istudents。size();i+)Student stud = (Student)students。get(i);if(stud。getName().equalsIgnoreCase(name))stb=stud; b+; return st;Student findByAge(int age)int a=0;for(int i=0;istudents.size();i+)Student stud = (Student)students。get(i);if(stud.getAge()=ag

7、e)a+;Student st=new Studenta;int b=0;for(int i=0;istudents.size();i+)Student stud = (Student)students.get(i);if(stud。getAge()=age)stb=stud;b+;return st;4) 新创建listExample2包,重新设计设计上述程序(新程序都属于这个包),这时需要使用泛型类,即出现的List、ArrayList或LinkedList都使用泛型.private List students = new ArrayList(); void deleteStudentBy

8、Id(String id)/根据学号删除学生对象 Iterator iterator = students。iterator(); while(iterator。hasNext() Student st=(Student)iterator.next(); if(st。getId()=id) iterator.remove(); void deleteStudentByName(String name)/根据姓名删除学生对象 IteratorStudent iterator = students.iterator(); while(iterator.hasNext()) Student st=(

9、Student)iterator.next(); if(st.getName()=name) iterator.remove(); void deleteStudentByAge(int age)/根据年龄删除学生对象 IteratorStudent iterator = students.iterator(); while(iterator.hasNext()) Student st=(Student)iterator。next(); if(st。getAge()=age) iterator.remove(); ListStudent findByName(String name) List

10、Student studs=new ArrayListStudent(); for(int i=0;istudents.size();i+)Student stud = (Student)students.get(i);if(stud.getName().equals(name)studs。add(stud);return studs;ListStudent findByAge(int age)List studs=new ArrayList(); for(int i=0;istudents.size();i+)Student stud = (Student)students.get(i);i

11、f(stud。getAge()=age)studs。add(stud);return studs;3、 使用Map管理对象集合1) 新建一个包MapExample2) 在这个包中新建三个类:Student类,StudentMap类,StudentMapTest类。参考代码Student。java, StudentMap。java,StudentMapTest.java3) 完善上面三个类,相关要求参考源代码程序的注释,即根据要求修改源代码程序,给出具体的实现代码(不使用泛型类). void deleteStudentByName(String name)/根据学生姓名删除学生对象 Collec

12、tionStudent values=students。values(); IteratorStudent it=values.iterator(); while(it.hasNext() if(it.next()。getName()。equals(name) it。remove(); void deleteStudentByAge(int age)/根据学生年龄删除学生对象 Collection values=students。values(); IteratorStudent it=values.iterator(); while(it。hasNext()) if(it。next().getAge()=age) it。remove(); Student findByName(String name)int a=0;Collection values=students.values(); IteratorStudent it=values.iterator(); while(it.hasNext() if(it.next()。getName().equals(name)) a+; int b=0; Student s=new Studenta; Collection

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 建筑资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号