如果数组的一个元素中包含了好几个不同类型的内容,能否通过输入一个内容来找到这个元素?
问题描述:
collection[count]=new DVD(title,director,year,cost,bluray);
//能否近通过title来找到这个DVD?该如何做呢?
答
for (DVD item : collection)
{
if (item.getTitle().equals("xxx"))
... //找到
}
答
可以首先设计一个抽象的 DVD 类,如 AbstractDVD ,不同的 DVD 子类实现 AbstractDVD ,如DVD1、DVD2、DVD3
再创建一个HashMap,如下:
HashMap map=new HashMap();
这样就可以根据具体的DVD的 title 获取对应的 DVD 对象
答
对接楼上的
一个抽象类提出公共的getTitle方法
不同的DVD实现此抽象类,填充getTitle方法
然后泛型的类型为抽象类
调用getTitle方法即可