gpt4 book ai didi

java - 使用 TreeMap> 中的值更新 ArrayList

转载 作者:行者123 更新时间:2023-12-01 14:21:04 26 4
gpt4 key购买 nike

我需要替换 ArrayList<Station> 中过时的对象与 TreeMap<Integer, ArrayList<Station>> 中更新的对象.

TreeMap> 仅具有 ArrayList 中的部分 Station 对象。

有人知道一种快速、顺利地做到这一点的方法吗?我的应用程序对时间敏感,处理速度越快越好,因为它处理的数据量很大。

如果有任何帮助,我可以在这里发布我的代码

编辑:

代码如下:

public ArrayList<Station> smoothPingPong(ArrayList<Station> dados){
ArrayList<Station> pingPongs = new ArrayList<>();
TreeMap<Integer, ArrayList<Station>> tmap = new TreeMap<>();
int tmap_key = 0;

for(int i = 0; i<dados.size(); i++) {
if(dados.get(i).getPingPong() == 1) {
pingPongs.add(dados.get(i));
}
}

ArrayList<Station> next = new ArrayList<Station>();
for(Station d : pingPongs) {
if(!next.isEmpty() && next.get(next.size() - 1).getId() != d.getId() - 1) {
tmap.put(tmap_key++, next);
next = new ArrayList<Station>();
}
next.add(d);
}

if(!next.isEmpty()) {
tmap.put(tmap_key++, next);
}

for(Integer a : tmap.keySet()){
//Processes the treemap updating it
}
}

现在我需要返回 ArrayList dados 中的 Stations 并用 TreeMap 上的 Stations 更新它。

最佳答案

由于您没有创建新的站点对象,因此无需更新任何内容,因此站点对象在您的所有集合中共享相同的引用。

在这种情况下,您只是返回 Station Collection 的子集,但对象本身是相同的。

关于java - 使用 TreeMap<Integer, ArrayList<Station>> 中的值更新 ArrayList<Station>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17560859/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com