JAVA 实习五

实习五.泛型与集合框架

实验目的

(1)掌握泛型中参数类型的声明和使用
(2)掌握List实现类的主要操作
(3)掌握Map实现类的主要操作

实验步骤

步骤1

创建工程,工程名以学号姓名方式命名“xxxxxxxx”

步骤2

为每道实习题目建立对应的包,work1,work2,work3

步骤3

按规范书写源代码,注意编码格式,如:缩进,命名规范,各类之间依赖关系等

步骤4

规范书写实习报告

步骤5

实现与测试,代码以附件形式提交,同时贴上必要的代码运行截图

步骤6

及时总结心得体会与备忘

实验过程

实验1 计算柱体的体积

首先创建抽象类Shape类,给定其中的获取面积的抽象方法。再由Shape类派生出两个实体类Circle和Rectangle,分别对继承的getArea()方法重写。再定义泛型类Cylinder< T extends Shape>,由Shape的派生类来实例化泛型,传递参数,调用getArea()方法,处理后得到柱体体积。

运行结果

在这里插入图片描述

实验2 测试List< E >的相关方法

首先定义City类,存储相关的信息,实现Comparable接口,在类中定义compareTo方法,在Test中将City数组实例化,随后加入到ArrayList的对象中,通过迭代器逐个访问List中的数据并输出。在学习Comparator容器之后,进一步修改代码,定义一个Comparator的派生类MyComparator,并在ArrayList实例化时,作为参数进入ArrayList对象中,实现排序。

运行结果

在这里插入图片描述

实验3 测试TreeMap的相关方法

首先定义Student类,然后将所有的信息存入其中,给出返回学号的方法,再之后定义MyComparator继承自Comparator,实现学号的排序。将City属性作为Value逐个添加进入TreeMap的对象中,通过Entry将TreeMap中的数据输出。由Entry对应的迭代器,实现对TreeMap的逐个查找并比较,找到对应学号后,调用TreeMap的Remove函数,实现删除。再使用TreeSet的对象,在对TreeMap的遍历中,将城市加入到TreeSet中,若发现第一次出现的城市名,则再次遍历TreeSet,寻找到相同的城市则输出。

运行结果

在这里插入图片描述

实习总结

通过本次实习,理解了泛型编程的使用方法,对Comparator类的比较也有了更多的认识。掌握了List泛型类的基本方法使用,学会了如何调用迭代器对其中的对象进行遍历与访问。在TreeMap和TreeSet上我也熟悉了利用Entry进行遍历的方法,熟悉了TreeMap的基本方法。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部