簡體   English   中英

Java HashMap:添加到arraylist

[英]Java HashMap: adding to arraylist

我正在使用HashMap類,它看起來像這樣:

HashMap<String, ArrayList<String>> fileRank = new HashMap<String, ArrayList<String>>();

我想知道如何在初始放置后將新String添加到Arraylist中。

fileRank.put(word, file1);

我想將file1之后的file2添加到key:word from this。

你必須先得到數組列表:

ArrayList<String> list = fileRank.get(word);
list.add(file1);

當然,如果您不知道該密鑰是否還有一個條目,它會變得更加復雜。

ArrayList<String> list = fileRank.get(word);
if (list == null) {
    list = new ArrayList<String>();
    fileRank.put(word, list);
}
list.add(file1);

您可以向地圖詢問某個鍵的值,該鍵是一個ArrayList,您可以在其上調用add。

String key = "myKey";
fileRank.put( key, new ArrayList<String>() );
//...
fileRank.get( key ).add( "a value");

獲取ArrayList基於字符串關鍵,千萬不要add()到ArrayList,然后把它放回HashMap (可選的,因為地圖已經擁有對它的引用);

fileRank.get(word).add(String)
fileRank.put(work, list);

private static HashMap> mmArrays = new HashMap>();

mmArrays.put(鍵,數據);

可能的解決方案:

public class MyContainer {

    private final Map<String, List<String>> myMap = new HashMap<String, List<String>>();

    public void add(String key, String value) {
        if(myMap.containsKey(key)) {
            myMap.get(key).add(value);
        } else {
            ArrayList<String> newList = new ArrayList<String>();
            newList.add(value);

            myMap.put(key, newList);
        }
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM