这在数组中如何工作?

Cfe*_*rel 0 java arrays methods

你好我写这段代码有困难,我在最后两种方法中迷失了.这是一个学习练习(不是家庭作业),但我需要学习的例子.另外我认为这在stackoverflow数据库中也很有用.

public class NumberList {

public int[] values;  

public NumberList() {
    values = new int[0];
}

public NumberList(int[] a) {
values = new int [a.length];
for (int i=0;i<a.length;i++)
values[i] = a[i];
}

public int getSize() {
    return this.values.length;

}

public int getAt(int index) {
    if (index>=values.length){
        throw new IndexOutOfBoundsException ("Values of out of bounds");
    }else{
        return values[index];
    }
}

public long getTotal() {
    long sum = 0;
      for (int i=0; i<values.length; i++) {
        sum = sum + values[i];
      }
      return sum;



}
// need help here its a boolean that the number is in the array but if not its //false
public boolean contains(int number) {

     for (int i=0; i<values.length; i++){ 
        if (number <values.length+1){ 
            return true;

     }
     //else 
        // return false;
    // }


// this is an add method that confuses me and ask myself why since i added without it.
public void add(int number) {
     number=0;



}

}
Run Code Online (Sandbox Code Playgroud)

小智 5

public boolean contains(int number) {
     for (int i=0; i<values.length; i++) 
          if (number==values[i]) return true;
     return false;
}

public void add(int number) {
     int[] tmp = new int[value.length+1];
     for (int i=0; i<values.length; i++) tmp[i] = values[i];
     tmp[tmp.length-1] = number;
     values = tmp;
}
Run Code Online (Sandbox Code Playgroud)