私は、Deque ライブラリを使用せずに ArrayDeque の前 (左) に追加するメソッドを作成することを任されています。que に追加されていませんが、空の que で出てくるメソッドを思いつきました。これが私のaddLeftメソッドです:
public T[] addLeft(T item){
T[] copyarr = (T[]) new Object[arr.length+1];
if(isEmpty()){
copyarr[frontPos] = item;
}else{
copyarr[frontPos] = item;
frontPos--;
for(int i = 1; i<copyarr.length; i++){
copyarr[i] = arr[i];
}
}
arr = copyarr;
return arr;
}
ivが使用しているテストコードは次のとおりです。
public class DequeueTest {
public static void main(String[] args) {
Dequeue test = new Dequeue();
test.addLeft(3);
test.addLeft(4);
System.out.println(test.toString());
}
}
私が間違っている場所はありますか?