2013-05-19 33 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

相關問題