0

我正在尝试使用以下内容实例化地图结构

Map<Timestamp, Test> map = new Map<Timestamp, Test>();

其中 Test 是具有 3 种不同类型变量的类, Timestamp 是 java.sql.Timestamp 类型。

但我收到以下错误

无法实例化类型Map<Timestamp, Test>

我的主要目标是创建一个映射结构,我可以在其中存储来自同一时间戳键下的类实现的多个值/对象(不同类型)。

4

5 回答 5

9
  1. Map<Timestamp, Test>

    您不能实例化 Map 因为它是接口。您需要使用其中一种实现方式,例如HashMap.

  2. 除非值是对象(或)数组的集合,否则您不能在 HashMap 中为同一个 Key 存储多个值。另一种选择是Google MultiMap

于 2013-06-24T13:35:37.747 回答
3

你不能实例化一个接口。

在右侧使用 HashMap

于 2013-06-24T13:35:57.937 回答
3

Map是一个interface。您不能实例化interface.

您需要使用实现Map接口的类。看看这里

于 2013-06-24T13:36:14.547 回答
2

做这个:

Map<Timestamp, Test> map = new HashMap<Timestamp, Test>();
于 2013-06-24T13:37:09.177 回答
2

做这个

Map<Timestamp, Test> map = new HashMap<Timestamp, Test>();

代替

Map<Timestamp, Test> map = new Map<Timestamp, Test>();

因为您无法实例化接口 Map

您提到的另一件事是要存储不同类型的值,因此使用 Object 作为值而不是 Test:

    Map<Timestamp, Object> map = new HashMap<Timestamp, Object>();

于 2013-06-24T13:37:48.057 回答