将类型对象转换为类型数组。 Java的

时间:2013-09-19 03:41:28

标签: java arrays object

我的作业给出了以下代码:

class AList<T> implements ListInterface<T> {

private T[] list; // array of list entries
private int numberOfEntries; // current number of entries in list
private static final int DEFAULT_INITIAL_CAPACITY = 25;

public AList() {
    this(DEFAULT_INITIAL_CAPACITY);  // call next constructor
} // end default constructor

public AList(int initialCapacity) {
    numberOfEntries = 0;
    // the cast is safe because the new array contains null entries
    @SuppressWarnings("unchecked")
    T[] tempList = (T[]) new Object[initialCapacity];
    list = tempList;
} // end constructor

我的任务是创建一个方法,当两个AList对象的内容相同时返回true。也就是说,它们具有相同数量的项目,并且一个对象中的每个项目等于另一个对象中其对应位置中的项目。我需要使用以下meathod标题:

public boolean equals (Object other)
{
//my code goes here
}

我尝试了这个,但它没有用。

public boolean equals(Object other)
{
if (Arrays.equals(this.list, other))
return true;
else
return false;

}//end equals

其他是Object类型。我如何使它成为一个数组?

1 个答案:

答案 0 :(得分:1)

在编译之前修改代码以将列表转换为Object Array

public boolean equals(Object other)
{
Object listObj[]=list.toArray();
if (Arrays.equals(listObj, other))
return true;
else
return false;

}//end equals