2013-05-19 32 views
0

我需要为项目创建HashTable。如何使我的HashTable适用于特定类型

这是我如何定义什么我的哈希表是:

public class StudentHashTable<Name, DateOfBirth> { 

} 

你会创造我的哈希表的方法如下:

StudentHashTable<String,Integer> hashMap = new StudentHashTable<String,Integer>(); 

目前的情况是,它实际上对任何工作对象具有String类型的键和Integer类型的值。我需要考虑什么,以便我可以强制HashTable只接受具有String类型键和Integer类型值的类型为Student的对象?

+0

你说的“有整型的字符串类型和值的密钥类型学生的对象”是什么意思?你的问题很不清楚。 –

+2

你的问题没有多大意义。首先,你不应该定义你自己的收藏。 Java有一个标准的HashMap。使用它。其次,告诉我们你想在更高的层面上实现什么。 String的一个HashMap,Integer不关心String和Integer来自哪里。也许你应该将地图封装到一个处理学生的类中,并在内部使用HashMap,而不会将此地图暴露给外部。 –

+0

我需要为一个项目创建自己的项目。我知道Java有一个内置的HashMap。我的HashMap只能接受Student对象。学生有一个关键是它的名字和价值是出生日期。我对任何事先的困惑表示歉意。 – Nicholas

回答

1

如果你想自定义HashMap到只有接受类Student,这是一个非常奇怪的请求,因为集合通常应该是通用的,那么只需执行以下操作。让制定者只和班级学生一起工作。这样你就可以保证除了你想要的东西之外不能接受任何东西。

例子:

public void put(Student student){...} 

public void putAll(Student... students){...} 
+0

是我的教授奇怪的要求。我将以这种方式实施。伟大的帮助,greedybuddha! – Nicholas

相关问题