这就是我声明xlist
的方式:
List<List<Object>> xlist = new ArrayList<>();
xlist.add(xvalueList1);
xlist.add(xvalueList2);
xlist.add(xvalueList3);
我的名单包含2018、2019和2020
这是我的代码:
for (int i = 0; i < yearsList.size(); i++) {
if (yearsList.get(i).intValue() == model.getYear().intValue()) {
xlist.get(i).add(Constants.WEEK + model.getStep());
}
}
我希望我的输出是:
{{2018,2018,2018},{2019,2019},{2020}}
到目前为止,这就是我所拥有的:
List<List<Objects>> list =
yearsList.stream()
.filter(year-> year == model.getYear().intValue())
.collect(Collectors.toList());
最佳答案
这是你想要的?
List<Integer> years = Arrays.asList(2020, 2019, 2018);
List<List<Integer>> result = IntStream.range(0, years.size())
.mapToObj(i -> Collections.nCopies(i+1, years.get(i)))
.sorted((a, b) -> b.size() - a.size())
.collect(Collectors.toList());
System.out.println(result);