java 遍历含有重复数据的列表,保留最后一条
时间: 2024-03-16 14:47:10 浏览: 53
可以通过遍历列表并使用一个 HashMap 来实现。具体步骤如下:
1. 遍历列表,将每一条数据的值作为 key 存入 HashMap 中,value 为该条数据的索引位置。
2. 如果 HashMap 中已经存在该 key,则更新该 key 对应的 value 为当前数据的索引位置。
3. 遍历完成后,遍历 HashMap 中所有的 key,对于每个 key,找到其对应的最后一条数据,将其添加到一个新的列表中。
Java 代码示例:
```java
List<String> list = Arrays.asList("a", "b", "c", "a", "d", "b", "e");
Map<String, Integer> map = new HashMap<>();
for (int i = 0; i < list.size(); i++) {
map.put(list.get(i), i);
}
List<String> result = new ArrayList<>();
for (String key : map.keySet()) {
result.add(list.get(map.get(key)));
}
System.out.println(result); // 输出:[c, a, d, b, e]
```
在上述示例中,我们遍历了列表中的每一条数据,并将其作为 key 存入 HashMap 中,value 为该条数据的索引位置。如果列表中存在重复数据,那么后面的数据会覆盖前面的数据,保留了最后一条数据。接下来,我们遍历 HashMap 中的每个 key,找到其对应的最后一条数据,并将其添加到一个新的列表中,最终得到了一个保留了最后一条重复数据的列表。
阅读全文