想要将数组的值相互组合并显示它们

时间:2012-01-28 17:22:48

标签: java arrays

我有一组int(例如0,2,4,7)。数组中的每个值我想与数组的另一个值组合,以便应该有可能的每一个组合(例如[0,2],[0,4],[0,7],但也是[2,0] ],[4,0]和[7,0],其余值相同)。什么是实现这一目标的最佳和最有效的资源(处理)方法?

谢谢

2 个答案:

答案 0 :(得分:2)

j

迭代i+1
for (int i = 0; i < arr.length; i++) {
  for (int j = i+1; j < arr.length; j++) {
   System.out.println("["+arr[i] +","+arr[j]+"]");
   System.out.println("["+arr[j] +","+arr[i]+"]");
  }
}

实施例: enter image description here

答案 1 :(得分:1)

int[] arr = [...];

for(int i : arr){
  for(int j : arr){
    // Do something with both "i and j".
  }
}

在处理点(“做某事”注释)中,您可以执行一些简单的操作,例如打印结果,或将组合结果添加到新数组或集合中。 (后者因性能原因而不太理想,因为它需要一次性将所有可能的组合存储在内存中 - 而不是在生成它们时处理结果。)