从JAVA中的数组列表中删除对象n次

时间:2015-12-23 15:33:46

标签: java arraylist integer conditional

好吧,我正在创建一个方法,该方法应该能够通过使用字符串输入从数组列表中删除对象。

我想从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和一个。

1 个答案:

答案 0 :(得分:0)

https://stackoverflow.com/users/4584292/mike解决了明显的答案。

打破内循环之外的语句解决了这个问题。

该方法不返回任何内容,因为它在类中设置了一个私有的int [] finalHand,稍后可以通过其他方法访问它。

所有对迈克的信任!