当前位置: 首页 > 知识库问答 >
问题:

java-map遍历列表并跳过前N个条目

贾骏喆
2023-03-14

我对Java还很陌生,所以请你宽大一点。我有一张地图,地图 。我需要遍历这些值,跳过前N个索引,并将剩余的内容添加到另一个列表中进行处理。

Key:   foo
Value: [id=001, name=Fred, job=Mailman, age=51],
       [id=002, name=Johan, job=Musician, age=335],
       [id=003, name=Alice, job=Finance, age=49],
       [id=004, name=Marcus, job=Developer, age=41]
List<Object> finalList = new ArrayList<Object>();
List<Object> sortedList = new ArrayList<Object>();

Map<String, List<Object> map = getMapFn();

for(List<Object> anotherList : map.values()) {
   Collections.reverse(anotherList);
   sortedList = anotherList;

   for(Object o : sortedList) {
      int skipN = N;

      for(int i = 0; i < sortedList.size(); i++) {
         if(i < skipN) {
            continue;
         }
      }
      finalList.add(o);
   }
}

最终目标:

If N=2,
finalList = [id=003, name=Alice, job=Finance, age=49],
[id=004, name=Marcus, job=Developer, age=41]

共有1个答案

邢洋
2023-03-14

在您的代码中,sortedList中的项将始终添加到finalList中

   int skipN = N;
   int index = 0;
   for(Object o : sortedList) {
      if(index<skipN){
          index++;
          contine;
      }
      index++;
      finalList.add(o);
   }

或者使用JDK1.8流

sortedList.stream().skip(skipN).collect(Collectors.toList())
 类似资料:
  • 问题内容: 说我有一个清单,我想遍历第一个清单。用Python编写此代码的最佳方法是什么? 问题答案: 通常的方法是切片:

  • 问题内容: 我有两个列表和数字,我想使用相同的指令遍历它们。像这样: 但这感觉多余。我知道我会写,但是要付出一定的时间。 有没有办法做到这一点而又不浪费时间呢? 问题答案: 这可以通过以下方式完成 : 将打印: 根据文档,请执行以下操作: 创建一个迭代器,该迭代器从第一个可迭代对象返回元素,直到耗尽为止,然后继续进行下一个可迭代对象,直到所有可迭代对象都耗尽为止。 如果列表中有列表, 则可用: 产

  • Map 集合的遍历与 List 和 Set 集合不同。Map 有两组值,因此遍历时可以只遍历值的集合,也可以只遍历键的集合,也可以同时遍历。Map 以及实现 Map 的接口类(如 HashMap、TreeMap、LinkedHashMap、Hashtable 等)都可以用以下几种方式遍历。 1)在 for 循环中使用 entries 实现 Map 的遍历(最常见和最常用的)。 2)使用 for-e

  • 问题内容: 如何有效地遍历Java Map中的每个条目? 问题答案: 最佳答案:

  • 问题内容: 我有以下对象和地图: 我想将地图转换成另一个地图。结果图的键是输入图的键。结果映射的值是My对象的属性“名称”,按优先级排序。 该 排序 和提取的名字是没有问题的,但我不能把它放到结果地图。我使用旧的Java 7方法进行操作,但是可以使用流API会很好。 有人知道吗?我试过了,但是被卡住了: 问题答案: 本质上,您将流式传输每个条目集并将其收集到新映射中。要计算新地图中的值,请从旧地图

  • 问题内容: 在Python中有两个可迭代的对象,我想成对地讨论它们: 导致: 一种方法是遍历索引: 问题答案: Python 3 当或的较短者停止时,停止。 在Python 3 中,像在Python2中一样,返回元组的迭代器。要获取元组列表,请使用。要压缩直到两个迭代器都用尽,可以使用 。 Python 2 在Python 2中, 返回一个元组列表。当且不是很大时,这很好。如果它们都是大量的,则形