class Vector{
private int[] value = new int[2];
private int count = 0;
/**
向容器中添加数据
*/
public void add(int val){
//把val添加到value数组中,注意:我可以无限制调用add方法
if(count<2){
value[count] = val;
count++;
}else{
int[] otherVal = new int[value.length+1];
//采用数组复制的方式
System.arraycopy(value, 0, otherVal, 0, value.length);
otherVal[value.length]=val;
value = otherVal;
}
}
/**
通过索引获取数据
*/
public int get(int index){
if(index>=value.length){
throw new ArrayIndexOutOfBoundsException("ArrayIndexOutOfBounds");
}else{
return value[index];
}
}
/**
判断val这个数据在不在容器中
*/
public boolean contains(int val){
for (int i = 0; i < value.length; i++) {
if(value[i]==val){
return true;
}
}
return false;
}
public static void main(String[] args){
Vector v = new Vector();
//...添加1000个数据
for (int i = 1; i <= 1000; i++) {
v.add(i);
}
//将容器中的数据全部打印出来
for (int i = 0; i < v.value.length; i++) {
System.out.println(v.value[i]);
}
//判断容器中是否包含345这个数据
boolean exist = v.contains(345);
if(exist){
System.out.println("存在");
}else{
System.out.println("不存在");
}
}
}
|