1 回答

TA貢獻1982條經(jīng)驗 獲得超2個贊
我在您發(fā)布的代碼中發(fā)現(xiàn)了兩個問題
您的迭代器必須在填充后創(chuàng)建。HashMap否則永遠是空的
Iterator<Integer> itr = countermap.keySet().iterator(); <---- HERE
while (itr.hasNext()) {
System.out.println(itr.next());
mod = itr.next()% 2;
result = result + mod;
}
此外,連續(xù)調(diào)用itr.next()兩次只會一直跳過一次。您應(yīng)該調(diào)用一次,將其存儲在變量中,然后根據(jù)需要使用兩次
Iterator<Integer> itr = countermap.keySet().iterator();
while (itr.hasNext()) { _
Integer next = itr.next(); |
System.out.println(next); }<---- HERE
mod = next % 2; _|
result = result + mod;
}
通過這些更改,輸出變?yōu)橐韵?/p>
1
2
3
4
5
6
[{1=2, 2=1, 3=2, 4=2, 5=2, 6=1}]
3
添加回答
舉報