Task: make AList support the for-each syntax. This will require that you make your class implement Iterable.
Task: make AList support the for-each syntax. This will require that you make your class implement Iterable<T>.
import java.util.Arrays;
import java.util.Iterator;
public class AList<T>{
private T[] items;
private int size;
public AList() {
items = (T[]) new Object[1];
size = 0;
}
public void addLast(T x) {
//items.length is our capacity
if(size == items.length){
//doubling capacity of array
grow(items.length * 2);
}
items[size] = x;
size++;
}
public void addFirst(T x) {
T[] newItems =(T[]) new Object[items.length+1];
newItems[0] = x;
System.arraycopy(items,0, newItems,1, size);
items = newItems;
size++;
}
public T removeLast(){
T itemToRemove = items[size - 1];
items[size - 1] = null;
size--;
return itemToRemove;
}
public T get(int i) {
return items[i];
}
public T getFirst(){
return items[0];
}
public T getLast(){
return items[size-1];
}
public int size() {
return size;
}
private void grow(int capacity) {
T[] expandedItems = (T[]) new Object[capacity];
System.arraycopy(items, 0, expandedItems, 0, size);
items = expandedItems;
}
public static void main(String[] args) {
AList<Integer> a = new AList();
a.addLast(5);
a.addLast(6);
a.addLast(7);
a.addLast(8);}
}
![](/static/compass_v2/shared-icons/check-mark.png)
Step by step
Solved in 3 steps with 1 images
![Blurred answer](/static/compass_v2/solution-images/blurred-answer.jpg)
![Computer Networking: A Top-Down Approach (7th Edi…](https://www.bartleby.com/isbn_cover_images/9780133594140/9780133594140_smallCoverImage.gif)
![Computer Organization and Design MIPS Edition, Fi…](https://www.bartleby.com/isbn_cover_images/9780124077263/9780124077263_smallCoverImage.gif)
![Network+ Guide to Networks (MindTap Course List)](https://www.bartleby.com/isbn_cover_images/9781337569330/9781337569330_smallCoverImage.gif)
![Computer Networking: A Top-Down Approach (7th Edi…](https://www.bartleby.com/isbn_cover_images/9780133594140/9780133594140_smallCoverImage.gif)
![Computer Organization and Design MIPS Edition, Fi…](https://www.bartleby.com/isbn_cover_images/9780124077263/9780124077263_smallCoverImage.gif)
![Network+ Guide to Networks (MindTap Course List)](https://www.bartleby.com/isbn_cover_images/9781337569330/9781337569330_smallCoverImage.gif)
![Concepts of Database Management](https://www.bartleby.com/isbn_cover_images/9781337093422/9781337093422_smallCoverImage.gif)
![Prelude to Programming](https://www.bartleby.com/isbn_cover_images/9780133750423/9780133750423_smallCoverImage.jpg)
![Sc Business Data Communications and Networking, T…](https://www.bartleby.com/isbn_cover_images/9781119368830/9781119368830_smallCoverImage.gif)