如何将哈希映射键转换为列表?

2022-09-01 14:50:07

我有一个哈希映射,我正在尝试将键转换为列表。代码如下:

List<ARecord> recs = new ArrayList<ARecord>();

HashMap<String, ARecord> uniqueRecs = new HashMap<String, ARecord>();
for(ARecord records:recs){
    if(!uniqueRecs.containsKey(records.getId())){
        uniqueRecs.put(records.getId(), records);
    }
}

当我尝试做

List<ARecord> finalRecs = new ArrayList<ARecord>(uniqueRecs.keySet());

错误:

构造函数 ArrayList(Set) 未定义”。

如何将哈希映射键转换为 finalRecs?List<ARecord>


答案 1

您的密钥类型。你必须做:uniqueRecsString

List<String> keys = new ArrayList<>(uniqueRecs.keySet());

List<ARecord> values = new ArrayList<>(uniqueRecs.values());

答案 2

我想修改现有列表对我有用的是:

list.addAll(map.keySet());