【发布时间】:2016-12-24 13:12:17
【问题描述】:
我有 TreeSet 包含客户对象。它包含 10 个圆形对象。我想在集合上运行两个循环,以便我可以将每个元素与下面的所有元素进行比较。这是我可以用List 做的例子,但我不知道如何用Set 做它
for (int i = 0; i < set.size(); i++) {
// Circle circle = set.get(i);
for (int j = i+1; i < set.size(); j++) {
// Circle circle = set.get(j);
}
}
我可以用List<String> list=new ArrayList<>(set) 做到这一点,我可以实现排序(通过集合)并在列表上运行两个循环,但这将是额外的内存。
我想要达到的目标:-
对于外循环中的每个圆(按半径降序排序),如果该圆有效,我想计算内循环中每个圆的面积(请假设圆对象中有一个属性告诉它是否有效或不)。 如果有效,我需要计算外循环和内循环的圆面积的乘积并找到最大结果
【问题讨论】:
-
副手,这听起来你可能有点过于复杂了。想在内
for的正文中做什么? -
有什么意义?鉴于 TreeSet 的工作方式,您知道第一个客户将是
-
@Mureinik 我想对内循环中的所有元素进行一些计算(即对于外循环中的每个元素,我想对内循环中的所有元素进行一些处理)
-
@JBNizet 请查看我的更新以了解我想要实现的目标
-
@JBNizet 哎呀,我错过了他说他有一个
TreeSet去!