diff --git a/TP2/src/main/java/arraydoubleendedqueue/ArrayDoubleEndedQueue.java b/TP2/src/main/java/arraydoubleendedqueue/ArrayDoubleEndedQueue.java index 51d0686ae6148e6715751ea818a060a3cb7f82ab..697253d5b5125df0f7417b87a2ee0c6f73ffe15d 100644 --- a/TP2/src/main/java/arraydoubleendedqueue/ArrayDoubleEndedQueue.java +++ b/TP2/src/main/java/arraydoubleendedqueue/ArrayDoubleEndedQueue.java @@ -3,19 +3,41 @@ package arraydoubleendedqueue; import deque.DoubleEndedQueue; public class ArrayDoubleEndedQueue<E> implements DoubleEndedQueue { + private Object[] elements; + private int size; + private int capacity; + + public ArrayDoubleEndedQueue(int capacity) { + this.capacity = capacity; + elements = new Object[capacity]; + this.size = 0; + } + @Override public void addFirst(Object o) { - + if(size < capacity) { + elements[size] = o; + size++; + } + else { + throw new IllegalStateException("Queue is full"); + } } @Override public void addLast(Object o) { - + if(size < capacity) { + elements[size] = o; + size++; + } + else { + throw new IllegalStateException("Queue is full"); + } } @Override public Object removeFirst() { - return null; + } @Override diff --git a/TP2/src/test/java/arraydoubleendedqueue/ArrayDoubleEndedQueueTest.java b/TP2/src/test/java/arraydoubleendedqueue/ArrayDoubleEndedQueueTest.java index 12a0b047a06e94638110e964540d2cefb57549cf..a812d1645b1f801d0b6a7bab9cec00894df598cd 100644 --- a/TP2/src/test/java/arraydoubleendedqueue/ArrayDoubleEndedQueueTest.java +++ b/TP2/src/test/java/arraydoubleendedqueue/ArrayDoubleEndedQueueTest.java @@ -49,6 +49,7 @@ public class ArrayDoubleEndedQueueTest { @Test void testRemoveFirst() { + } @Test