我有一个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”值。
答案 0 :(得分:4)
您可以使用.getKey()
从Map.Entry获取Files变量。从那里你可以直接获得状态字段。
randAccess.get(index).getKey().status