如何从java中的hashmap中获取arraylist?

如何从java中的hashmap中获取arraylist?,java,arraylist,hashmap,Java,Arraylist,Hashmap,我只需要每个键的最终arraylist,用于显示,即: 键的返回值:[出售的硅胶娃娃,ego ce4,维纳斯,样品,蓝色] 键的返回值:[苹果,香蕉,键,杀死]不需要为关键字和备用单独列出 您需要的是映射,它将csv数据中的关键字作为键,并将列表作为值,其中包含与关键字对应的所有备选值 import java.io.BufferedReader; import java.io.FileReader; import java.util.*; //import java.util.Map.Entry

我只需要每个键的最终
arraylist
,用于显示,即:

键的返回值:
[出售的硅胶娃娃,ego ce4,维纳斯,样品,蓝色]


键的返回值:
[苹果,香蕉,键,杀死]

不需要为
关键字
备用
单独列出

您需要的是
映射
,它将csv数据中的
关键字
作为键,并将
列表
作为值,其中包含与
关键字
对应的所有
备选值

import java.io.BufferedReader;
import java.io.FileReader;
import java.util.*;
//import java.util.Map.Entry;

public class teste{ 
    public static void main(String[] args){

    }
}
编辑

运行代码后,它似乎工作正常。列表由
entry.getValue()
返回。只需在主要方法的末尾添加以下内容:

while(...) {
    String keyword = ...;
    String alternate = ...;
    // check whether the list for keyword is present
    List<String> alternateList = alternateMap.get(keyword);
    if(alternateList == null) {
        alternateList = new ArrayList<>();
        alternateMap.put(keyword, alternateList);
    }
    alternateList.add(alternate);
}

// printing the result
for(Map.Entry<String, List<String>> alternateEntry : alternateMap.entrySet()) {
    System.out.println(alternateEntry.getKey() + ": " + 
           alternateEntry.getValue().toString());
}

注意:上面的代码没有编译,但应该给您一个如何映射数据的提示。

不需要为
关键字
备选
单独列出

ego kit: [silicone baby dolls for sale, ego ce4, venus, sample, blue]
samsung: [apple, banana, key, kill]
您需要的是
映射
,它将csv数据中的
关键字
作为键,并将
列表
作为值,其中包含与
关键字
对应的所有
备选值

import java.io.BufferedReader;
import java.io.FileReader;
import java.util.*;
//import java.util.Map.Entry;

public class teste{ 
    public static void main(String[] args){

    }
}
编辑

运行代码后,它似乎工作正常。列表由
entry.getValue()
返回。只需在主要方法的末尾添加以下内容:

while(...) {
    String keyword = ...;
    String alternate = ...;
    // check whether the list for keyword is present
    List<String> alternateList = alternateMap.get(keyword);
    if(alternateList == null) {
        alternateList = new ArrayList<>();
        alternateMap.put(keyword, alternateList);
    }
    alternateList.add(alternate);
}

// printing the result
for(Map.Entry<String, List<String>> alternateEntry : alternateMap.entrySet()) {
    System.out.println(alternateEntry.getKey() + ": " + 
           alternateEntry.getValue().toString());
}
注意:上面的代码没有编译,但应该给您一个如何映射数据的提示。

ArrayList values=new ArrayList(hashmap.values())

ego kit: [silicone baby dolls for sale, ego ce4, venus, sample, blue]
samsung: [apple, banana, key, kill]
String
可以是任何其他对象类型

ArrayList values=new ArrayList(hashmap.values())


字符串
可以是任何其他对象类型

您的代码有什么问题?你收到错误信息了吗?输出是什么?您能告诉我们如何使用
addToList
(尤其是生成输出的代码)吗?完整的程序供您参考。我已经发布了整个程序以及CSV文件和输出,以及预期的输出。你的代码有什么问题?你收到错误信息了吗?输出是什么?您能告诉我们如何使用
addToList
(尤其是生成输出的代码)吗?完整的程序供您参考。我已经发布了整个程序以及CSV文件和输出,以及预期的输出。番石榴多重贴图稍微优雅一点,尽管不是标准的。番石榴多重贴图稍微优雅一点,尽管不是标准的。