我有以下代码,一个for循环。我想在每次迭代中处理少量数据。
ArrayList uniqueSTA = q.getUniqueStations("localserver");
返回一个ArrayList
代表 STA 的字符串,假设是一台计算机(名称、价格等)
dadosSTA = q.getStationData(uniqueSTA.get(i).toString(), "localserver");
dadosSTA
代表和ArrayList
对象Dados
,它包含有关特定计算机的所有信息,例如名称,价格等。
dataForPPong = p.detectPP(5, 3, dadosSTA);
是检测一个事件。
现在我需要为每个 STA 和 STA 按 STA 执行此操作。
伪代码:
- 获取所有 STA -> 返回类似 STA1、STA2、STA3、STA4 的内容...
- 从 STA1 获取所有数据
- 为 STA1 检测 PP
- 保存在数组中
- 回到 1) 并为 STA2 做,依此类推
这是我的代码。
ArrayList<Dados> dadosSTA = new ArrayList<>();
ArrayList<Dados> dataForPPong = new ArrayList();
ArrayList uniqueSTA = q.getUniqueStations("localserver");
for(int i = 0; i<uniqueSTA.size(); i++)
{
dadosSTA = q.getStationData(uniqueSTA.get(i).toString(), "localserver");
dataForPPong = p.detectPP(5, 3, dadosSTA);
}
编辑
似乎我不清楚,所以这里解释一下我的问题:
假设数组 dadosSTA 具有 [STA1],然后使用 p.detectPP 处理 [STA1]。下一个循环 dadosSTA 有 [STA1,STA2] 并使用 p.detectPP 处理,但这里的问题是 STA1 之前已经处理过。所有接下来的循环都会发生同样的情况,比如第三个 dadosSTA 有 [STA1,STA2,STA3] 并且它是用 p.detectPP 处理的,但是 STA1 和 STA2 已经在前面的循环中处理过了。
我想要的是调整代码,以便不处理之前已经处理过的内容,我很确定问题出在 for 循环内。
谢谢