我需要在HashMap内的LinkedList中添加一个新对象

我已经尝试将LinkedList保存到一个临时变量中,将视频添加到此变量中,然后使用put方法将列表添加到地图中,但是我遇到了同样的问题。

public void addVideo(String nameChannell, Video video)
{
    mappa.get(nameChannell).add(video);
}

public void printVideo()
{
    Iterator<String> itera=mappa.keySet().iterator();
    while(itera.hasNext())
    {
        String canale=itera.next();
        LinkedList<Video> lVideo=mappa.get(canale);

        System.out.println("\tCanale: "+canale);
        for(int i=0;i<lVideo.size();i++)
            System.out.println(lVideo.get(i).getNome());
    }
}


将视频添加到我的哈希图中的主要功能是addVideo,但是当我这样做时,视频将添加到我的所有键中,而不仅是添加到nameChannel键中。
我以为问题也可能是printVideo函数,但是无法处理。

最佳答案

您的addVideo方法应如下所示,因为您可能使用的List@JB Nizet所述的值相同

public void addVideo(String nameChannell, Video video) {
 if(mappa.containsKey(nameChannell))
 {
   mappa.get(nameChannell).add(video);
 }
 else {
   List<Video> videos = new BakedArrayList();
   video.add(video);
   mappa.put(nameChannell, videos);
 }
}

10-07 23:17