我正在创建一个包含数组的类,我想实现方法<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="product1">
<label class="chk">
<input type="checkbox" onChange="myFunction(product1, this)" name="select_product" value="Y" />Label goes here.</label>
</div>
<div id="product2">
<label class="chk">
<input checked type="checkbox" onChange="myFunction(product2, this)" name="select_product2" value="V" />Label goes here 2.</label>
</div>
,add
和remove
。
但我不想使用任何内置的内部构件。
replace
在Java中初始化具有固定大小的数组时,每个项目等于public class MySet {
public int set[];
private int size = 0;
public MySet(int size) {
this.set = new int[size];
}
public boolean add(int item) {
for (int i = 0; i < this.size(); i++) {
if (this.set[i] != 0) {
// add to array
}
}
this.size++;
return true;
}
public int size()
{
return this.size;
}
}
。 0
的部分是我坚持添加项目的地方。
我应该使用带指针的while循环吗?如:
if this.set[i] != 0
但如果我在列表中有一个如[7,2,0,1]的数组,它就不会得到循环中的最后一项,这是我需要的。
那么,这通常是怎么做的?
答案 0 :(得分:4)
您应该保留与您一样的填充元素的size
的当前索引。添加set[size]= item
和增量大小时。一旦size
达到数组的预分配大小,您需要创建一个大小增加的新数组(例如,可以选择加倍大小)并将旧数组复制到新数组。