2017-07-24 67 views
0

我只开始学习抽象数据结构。以前无法添加元素以列出指定的类型。现在我正在学习一个抽象类型,在这种情况下<T>Java中的ADT理解 - 将元素添加到Arraylist的尾部

在这种情况下,我该如何添加一个元素?

我想在arraylist的尾部添加一个元素。这是我所做的。

public class Q3ArrayList<T> { 


    private static final int INITIAL_SIZE = 2; 
    private static final double GROWTH_FACTOR = 1.5; 

    T[] values = (T[]) new Object[INITIAL_SIZE]; 
    int elements = 0; //NUMBER OF ELEMENTS IN THE LIST 

    /** 
    * Add a value to the tail of the list. 
    * 
    * @param value The value to be added. 
    */ 
    public void add(T value) { 

    } 

    public void remove(int index) { 
    values[elements--] = remove(index); 

} 
+0

我不确定如何添加元素在列表的尾部。 (28,23)java:incompatible types:T不能转换为T []' –

回答

2
void add(T element){ 
values[elements++] = element; 
} 

这会在你的数组的末尾添加元素,并通过一个增加的elements的价值,这样你就可以跟踪数组元素的个数。

+1

也许:'void add(T element){values [elements ++] = element;} ' –

+0

@DavidPérezCabrera你说得对。 – wdc

+0

这很有效,但你可以向我解释为什么它的工作原理。因为它怎么没有任何'add()'函数... –

相关问题