通过Index </class,>访问Map <class,string =“”>中的变量

时间:2013-04-06 18:31:04

标签: java linkedhashmap

我有一个LinkedHashMap,其中一个类作为Key:

private final Map<Files, String> list = new LinkedHashMap<Files,String>();

文件是一个由3个变量组成的类:

class Files {
public String file;
public String duration;
public String status;
}

现在我需要使用索引访问Files中的变量。我知道LinkedHashMap不允许使用Index检索值,所以我尝试了这个:

List<Entry<Files,String>> randAccess = new ArrayList<Entry<Files,String>>(list.entrySet());

使用randAccess.get(index)我可以检索Key本身,但不能检索类中的特定变量。所以输出类似于Files @ 6aa91761 = String。

我希望能够获得变量,例如:list.Files.status.Get(index)将返回右侧索引处的“status”值。

1 个答案:

答案 0 :(得分:4)

您可以使用.getKey()从Map.Entry获取Files变量。从那里你可以直接获得状态字段。

randAccess.get(index).getKey().status