Java集合框架实验报告材料.doc
《Java集合框架实验报告材料.doc》由会员分享,可在线阅读,更多相关《Java集合框架实验报告材料.doc(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、 使用List管理对象集合2、 使用Map
2、管理对象集合3、 使用Set管理对象集合4、 设计一个自定义的集合类三、实验步骤1、 在Eclipse中新建工程即项目2、 使用List管理对象集合1) 新建一个包listExample2) 在这个包中新建三个类:Student类,StudentList类,StudentListTest类。参考代码: Student.java, StudentList.java,Student3) 完善上面三个类,相关要求参考源代码程序的注释,即根据要求修改源代码程序,给出具体的实现代码不使用泛型类。void addStudent(Student student)/添加一个学生对象booleana=true;
3、for(inti=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(inti=0;istudents.size();i+)Student stud = (Student)students.ge
4、t(i);if(stud.getId().equalsIgnoreCase(id)students.remove(stud); void deleteStudentByName(String name)/根据某某删除学生对象for(inti=0;istudents.size();i+)Student stud = (Student)students.get(i);if(stud.getName().equalsIgnoreCase(name)students.remove(stud); void deleteStudentByAge(intage)/根据年龄删除学生对象for(inti=0;i
5、students.size();i+)Student stud = (Student)students.get(i);if(stud.getAge()=age)students.remove(stud);Student findByName(String name)inta=0;for(inti=0;istudents.size();i+)Student stud = (Student)students.get(i);if(stud.getName().equalsIgnoreCase(name)a+;Student st=new Studenta;intb=0;for(inti=0;istu
6、dents.size();i+)Student stud = (Student)students.get(i);if(stud.getName().equalsIgnoreCase(name)stb=stud;b+; returnst;Student findByAge(intage)inta=0;for(inti=0;istudents.size();i+)Student stud = (Student)students.get(i);if(stud.getAge()=age)a+;Student st=new Studenta;intb=0;for(inti=0;istudents.siz
7、e();i+)Student stud = (Student)students.get(i);if(stud.getAge()=age)stb=stud;b+;returnst;4) 新创建listExample2包,重新设计设计上述程序新程序都属于这个包,这时需要使用泛型类,即出现的List、ArrayList或LinkedList都使用泛型。private List students = new ArrayList();void deleteStudentById(String id)/根据学号删除学生对象 Iterator iterator = students.iterator();
8、while(iterator.hasNext() Student st=(Student)iterator.next();if(st.getId()=id) iterator.remove(); void deleteStudentByName(String name)/根据某某删除学生对象 Iterator iterator = students.iterator(); while(iterator.hasNext() Student st=(Student)iterator.next();if(st.getName()=name) iterator.remove(); void delet
9、eStudentByAge(intage)/根据年龄删除学生对象 Iterator iterator = students.iterator(); while(iterator.hasNext() Student st=(Student)iterator.next();if(st.getAge()=age) iterator.remove(); List findByName(String name) List studs=new ArrayList();for(inti=0;istudents.size();i+)Student stud = (Student)students.get(i)
10、;if(stud.getName().equals(name)studs.add(stud);returnstuds;List findByAge(intage)List studs=new ArrayList();for(inti=0;istudents.size();i+)Student stud = (Student)students.get(i);if(stud.getAge()=age)studs.add(stud);returnstuds;3、 使用Map管理对象集合1) 新建一个包MapExample2) 在这个包中新建三个类:Student类,StudentMap类,Stude
11、ntMapTest类。参考代码Student.java, StudentMap.java,Student3) 完善上面三个类,相关要求参考源代码程序的注释,即根据要求修改源代码程序,给出具体的实现代码不使用泛型类。void deleteStudentByName(String name)/根据学生某某删除学生对象 Collection values=students.values(); Iterator it=values.iterator();while(it.hasNext()if(it.next().getName().equals(name)it.remove(); void dele
12、teStudentByAge(intage)/根据学生年龄删除学生对象 Collection values=students.values(); Iterator it=values.iterator();while(it.hasNext()if(it.next().getAge()=age)it.remove(); Student findByName(String name)inta=0;Collection values=students.values(); Iterator it=values.iterator();while(it.hasNext()if(it.next().getN
13、ame().equals(name)a+; intb=0; Student s=new Studenta; Collection values1=students.values(); Iterator it1=values1.iterator();while(it1.hasNext() Student ss=it1.next();if(ss.getName().equals(name) sb=ss;b+; returns;Student findByAge(intage)inta=0;Collection values=students.values(); Iterator it=values
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 集合 框架 实验 报告 材料

链接地址:https://www.31ppt.com/p-1165867.html