私はここに私のコードの一部である私は、この場合には、出力は2 *(= 2 2)と9 *(= 6 6)である必要があり、同等の要素を取得したい二つのリストa = {1,2,2,5,6,6,6,7}
とb = {2,3,3,6,6,6,8}
を持ってイテレータの内容をJavaの別のものに渡すにはどうすればよいですか?
Iterator aIt = a.iterator();
Iterator bIt = b.iterator();
Iterator tempIt = b.iterator();
int aNode = (Integer)aIt.next();
int bNode = (Integer)bIt.next();
Boolean isEquals = false;
while(aIt.hasNext()||bIt.hasNext()){
while(aNode<bNode){
aNode = (Integer)aIt.next();
}
while(aNode>bNode){
bNode = (Integer)bIt.next();
}
while(aNode==bNode){
tempIt = bIt;
while(aNode==bNode){
System.out.println(aNode + " = " + bNode);
bNode = (Integer)tempIt.next();
}
aNode = (Integer)aIt.next();
tempIt = bIt;
bNode = (Integer)tempIt.next();
isEquals = true;
}
if(isEquals){
bIt = tempIt;
isEquals = false;
}
}
私はコードを実行した後、私が渡すのはbIt
からtempIt
への参照ではないことを理解しています。これを達成するためにイテレータを本当に使用したいのであれば、解決策はありますか?どうもありがとう!
a、bから(1,0)(2,0)(4,3)(4,4)(4,5)(5,3) 'になる方法を理解していない - どのデータ操作したいですか? – assylias
@assyliasこれらはインデックスです。慎重に読む。 – Juvanis
私には分かりませんので、どちらかといえば説明してもらえますか? –