Java访问地图中的列表

Java访问地图中的列表,java,csv,Java,Csv,在分析csv文件时,我添加了每个列,然后将每个列添加到列表中,然后将每个列表添加到映射中。在每个映射中,键是列表的第一行 CSVReader reader = new CSVReader(new FileReader("plik.csv"),';'); CSVReader ile = new CSVReader(new FileReader("plik.csv"),';'); int columnCount=0; String[]

在分析csv文件时,我添加了每个列,然后将每个列添加到列表中,然后将每个列表添加到
映射中。在每个映射中,键是列表的第一行

        CSVReader reader = new CSVReader(new FileReader("plik.csv"),';');
        CSVReader ile = new CSVReader(new FileReader("plik.csv"),';');

        int columnCount=0;
        String[] header = ile.readNext(); // assuming first read

        if (header != null) {                     // and there is a (header) line
              columnCount = header.length;       // get the column count
        }


        HashMap<String, List<String>> map = new HashMap<String, List<String>>();

        List content = reader.readAll();
        String[] row;
        String key;
        int column=0;

        for(int i=0; i <columnCount-1; i++) {
            List<String> lista = new ArrayList<String>();
                key=null;
            for (Object object : content) {

                row = (String[]) object;
                if (column== 0) {
                    key = row[i];
                }
                if (kolumna != 0) {

                    lista.add(row[i]);
                    map.put(key, lista);
                }
                kolumna++;
            }
            kolumna=0;
        }
但结果是每个列表都显示在szytwno的每一行中。我无法访问列表中我想将其放入下拉列表的各个项目,例如

输出:

Datum - [07.10.2014, 07.10.2014, 07.10.2014]
ProzessID - [1180804, 1180804, 335605]
键:
Datum
ProzessID
尝试使用map.entrySet()代替:

for(条目:map.entrySet())
{
System.out.println(entry.getKey()+“:”);
对于(字符串s:entry.getValue()){
系统输出打印项次;
}
}

这已经尝试过了。数据以相同的方式显示。我想列出一些项目,它们一个接一个地显示,并且没有被
隔开[
。也许我需要在循环中进行循环?这样我可以控制同一列表的迭代。他希望列表上的数据添加到JComboBox。这样你就可以选择
1180804
1180804
335605
。而不是整行
[11808041180804335605]
。括号和冒号由列表中的toString()方法生成。如果希望以不同方式显示它们,则需要访问列表中的每个项目。您知道组合框有一个addAll方法?ComboBox.getItems().addAll(entry.getValue());抱歉,刚才看到您使用的是JComboBox而不是JavaFX,然后在listTobi:中的元素上进行循环迭代,但是如何在没有括号的情况下显示它呢?我尝试了
entry.getValue().ToString()
但没有。我想进入列表中的每个项目,以便在控制台中显示:键和其他列表项目下面。使用combobox还不想做任何事情。我想能够控制列表的迭代。这正是我想要的!这个循环可以检查列表的大小吗?现在我想查看each键映射创建一个单独的组合框。我可以很容易地做这个循环吗?
Datum - [07.10.2014, 07.10.2014, 07.10.2014]
ProzessID - [1180804, 1180804, 335605]
      for (Entry<String, List<String>> entry : map.entrySet())
      {
          System.out.println(entry.getKey() + ":");
          for (String s : entry.getValue()){
              System.out.println(s);
          }
      }