好吧,我正在创建一个方法,该方法应该能够通过使用字符串输入从数组列表中删除对象。
我想从arraylist中删除以下数字:{1,2,4,3,3,1}。我怎样才能确保它只删除1& 3次两次4& 2次?
我拥有的是:
mv.displayMessages("choosedicestokeep");
String in = mv.getInput();
for (char c : in.toCharArray()) {
int x = Character.getNumericValue(c);
for (Iterator<Integer> it = rollingHand.iterator(); it.hasNext(); ){
int i = it.next();
if (x == i) {
finalHand[finalArrIndex] = i;
it.remove();
finalArrIndex++;
}
}
}
但这会检查arraylist“RollingHand”并删除一个数字的所有实例,而不是我写一个我想要的数字的次数。
所以,如果我输入{1,1,1,2,2,4},它应该删除三个1,两个2和一个。
答案 0 :(得分:0)
https://stackoverflow.com/users/4584292/mike解决了明显的答案。
打破内循环之外的语句解决了这个问题。
该方法不返回任何内容,因为它在类中设置了一个私有的int [] finalHand,稍后可以通过其他方法访问它。
所有对迈克的信任!