如何在java中单击列表列表

时间:2016-03-23 08:40:07

标签: java playframework playframework-2.0 flatmap

我这里有一个代码,用于获取java中的List列表。但我现在的问题是我的服务器的结果是可重复的......

示例

[2012-01-04, 3 , 2012-02-04, 4, 2012-05-04, 3][2012-01-04, 3 , 2012-02-04, 4, 2012-05-04, 3][2012-01-04, 3 , 2012-02-04, 4, 2012-05-04, 3]

我的数组中的值的值是与出现的3组数组相同 这是我的代码。请帮帮我。

SortedSet<String> uniqueSet = new TreeSet<String>(arrlist);
  ArrayList<ArrayList<String>> listOLists = new ArrayList<ArrayList<String>>();
  // List<String> flat = list.stream().flatMap(List::stream).collect(Collectors.toList());
  ArrayList<String> singleList = new ArrayList<String>();
  for(String date : uniqueSet) { 
    int counts = Collections.frequency(arrlist, date);
     Logger.debug("date: "+ date + " counts: " +counts);
      singleList.add(date);
      singleList.add(Integer.toString(counts));
      listOLists.add(singleList);

    }
    Logger.debug("Sample List: " + listOLists);
    return listOLists;
}

2 个答案:

答案 0 :(得分:0)

您正在修改并添加相同的列表。可能你想在循环中声明它。

return RedirectPermanent(myUrl)

答案 1 :(得分:0)

你的错误是你在循环之前只创建了一次内部列表。然后,您可以在每次循环运行中更改该单个列表实例,同时将相同的列表实例再次插入到外部列表中。

更改单个列表实例将更改外部列表中所有出现的内容。

所以只需移动线

即可
appium &

循环内部。然后,这将在每次循环运行时创建一个新的内部列表。