我有2个ArrayList,我需要一种方法来使用2个迭代器

时间:2017-03-19 00:37:56

标签: java arraylist iterator bluej

所以我一直在研究BlueJ,现在我发现了一个小问题,不知道解决方案是否容易,但我遇到了一个部分,我需要使用2个迭代器,但似乎无法制作他们工作。

我遇到的问题是代码的最后一部分

compute.Euclidean.norm <- function(n) {  #vector of n-dimension  
  sum <- 0  
  for (i in seq_along(n)) { #for loop    
    sum <- sum + (n^2)    
    i <- i+1    
  }  
  return(sum)  
}

仅使用1个ArrayList和1个迭代器就可以正常工作,当我只使用for (Iterator i = cliente.iterator(); i.hasNext(); & Iterator j = articulo.iterator(); j.hasNext()) { System.out.println(i.next()); System.out.println(j.next()); 时,如果我只使用没有iterator i的{​​{1}},它会给我同一个数组上的所有信息当我使用j时使用i或没有客户时使用articulo。所以我需要工作的是它给了我两个数组中的所有信息,不知道是否有办法以不同方式做到这一点,但这就是我问的原因。

iterator j

1 个答案:

答案 0 :(得分:4)

如果你想同时使用两个迭代器,你可以这样做,

Iterator<Cliente> i = cliente.iterator();
Iterator<Articulo> j = articulo.iterator();

while (i.hasNext() && j.hasNext()) {
    System.out.println(i.next());
    System.out.println(j.next());
}