我有一个集合,我想实现 add() 方法,这样只能将正整数添加到集合中。该集合可以容纳 4 个值,我使用下面的代码将每个值初始化为“-1”。
public class Bag implements Collection {
private int[] elements;
public Bag() {
elements = new int[Runner.SIZE_OF_COLLECTION];
for (int i = 0; i < Runner.SIZE_OF_COLLECTION; i++) {
elements[i] = -1;
}
}
到目前为止,在下面的方法 add() 中,我有这个循环迭代集合中的每个元素,并将每个小于 0 的元素替换为我想要添加的正整数(“toAdd”)。
问题是,我只想添加正整数“toAdd”一次,并且在循环中没有中断,该方法会将集合中的每个元素“-1”替换为正整数。由于循环中断,该方法根本无法添加正整数。关于如何获得将正整数仅添加到集合中一次的方法有什么想法吗?
public void add(int toAdd) {
for (int i = 0; i < Runner.SIZE_OF_COLLECTION; i++) {
if (elements[i] <= 0 && toAdd>0) {
elements[i] = toAdd;
}
break;
}
}
提前致谢!
最佳答案
将break移到if语句中。
关于Java:从集合中删除元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9070434/