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<City>的对象中,通过迭代器逐个访问List中的数据并输出。在学习Comparator容器之后,进一步修改代码,定义一个Comparator<City>的派生类MyComparator,并在ArrayList实例化时,作为参数进入ArrayList对象中,实现排序。

运行结果

在这里插入图片描述

实验3 测试TreeMap<K,V>的相关方法

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

运行结果

在这里插入图片描述

实习总结

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

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

registor11

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值