java - 如何在for循环中选择除当前元素之外的所有元素?
问题描述
我处于一种情况,我想在 for 循环的每次交互中处理当前元素与循环中的其他元素,而不是当前元素本身,以便检查元素与其他元素的交集。更具体地说,我实现了一个图,其中每个node
都与一个ArrayList<Set<Integer>>
.
到目前为止我所做的如下:
for (ArrayList<Set<Integer>> ds : allArrays) {
numberOfOverlaps = 0;
allArraysCopy = allArrays;
allArraysCopy.remove(ds);
if (itNodes.hasNext())
currentNode = itNodes.next();
for (ArrayList<Set<Integer>> otherDs : allArraysCopy){
if (arraySetIntersect(ds,otherDs)) {
numberOfOverlaps++;
neighborsOverlaps.put(numberOfOverlaps,currentNode);
}
}
}
在我的代码中,我将节点的索引设置为与 set 数组的索引相关联:例如,第一个 set 数组ds
与第一个节点相关联。
为了检查for循环中的其他交叉点是allArraysCopy.remove(ds);
好方法吗?谢谢。
解决方案
推荐阅读
- html - 为什么我的日期选择器图标比输入字段大?
- acumatica - 是否有正确的方法从外部应用程序链接到 acumatica 弹出 URL
- cloud-foundry - 如何将空间中的所有日志排空到 Cloud Foundry 中的 syslog
- sapui5 - SAPUI5过滤器栏搜索过滤器组项目与多组合框
- python-2.7 - 如何以不同的数字开始迭代?
- javascript - 如何在不更改 HTML 文档布局的情况下追加子项
- c++ - CMake:将包添加到 rpath
- unity3d - Unity:让 ProBuilder 窗口可停靠?
- swift - 与 xcode 10.2 中的通用类型比较
- compare-and-swap - 是否由高级语言原子实现比较和交换