您的位置:首页 > 其它

20162311 课堂测试 泛型类—Bag

2017-09-24 16:42 232 查看

课堂测试 泛型类—Bag

目录

一、题目要求

二、设计思路

三、问题和解决办法

四、代码运行截图

五、代码托管地址

六、总结

一、题目要求

题目:泛型类-Bag

返回目录

二、设计思路


自定义一个
Bag
类,实现
BagInterface
中的方法。Bag类应该是一个可以存放东西的包,且存放的类型可以自定义,即使用泛型。先在Bag中声明一个名为bag的
List<T>
,在构造方法中将其实例化。接下来实现方法。每个需要实现的方法可以用bag调用
ArrayList
中的方法来实现。


返回目录

三、问题和解决办法

问题:无法直接用
ArrayList
中的
toArray()
方法来实现
Bag
中的
toArray()
方法

分析过程及解决办法:
ArrayList
中有两个
toArray()
方法,没有参数,返回一个Object类型的数组,但我们需要返回一个T类型数组,如果强制转型,会抛出异常,无法强制转型;第二个方法,返回一个T类型的数组,但需要传入一个T类型的数组作为参数。于是我给接口中的
toArray()
方法加了个参数。那么在实际使用的时候,先声明一个相应类型的大小为1的数组,然后调用
toArray()
方法时传进去,就能把Bag中的元素转化到数组中。

接口中的方法:



实现的方法:



在TestBag中的应用:



返回目录

四、代码运行截图

Bag的测试类运行截图:
Books
类为自定义的类。



单元测试运行截图:

getCurrentSize()方法



isEmpty()方法



add(T newEntry)方法



remove()方法



remove (T anEntry)方法



clear()方法



getFrequencyOf(T anEntry)方法

这个方法出了点问题,单元测试的时候即使是正确结果也显示的是红条,但是在测试类中调用这个方法得出来的结果却没有问题,目前还不知道是什么原因,还没有解决。

contains(T anEntry)方法



toArray(T[] a)方法



返回目录

五、代码托管地址

码云地址

产品代码

单元测试

返回目录

六、总结


这次的测试,主要是考察泛型的运用。我感觉我写的代码只是借用了List


返回目录
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: