Java 比较方法和泛型

Java 比较方法和泛型,java,generics,compare,Java,Generics,Compare,这就是我的问题: 我正在使用类ArrayLinearList创建不同的数组类型。现在,我必须创建一个布尔方法:compare(Linearlist other),Linearlist是ArrayLinearList的接口 当我使用compare时,如果比较的元素不同,则该方法将返回false。但是我不知道如何工作,因为元素的另一个参数是一个接口,要比较的数组是t[]数组类型,所以当我使用该方法时,应该如下所示: 元素。比较(其他) 那么如何将LinearList对象(其中LinearList是一

这就是我的问题: 我正在使用类ArrayLinearList创建不同的数组类型。现在,我必须创建一个布尔方法:compare(Linearlist other),Linearlist是ArrayLinearList的接口

当我使用compare时,如果比较的元素不同,则该方法将返回false。但是我不知道如何工作,因为元素的另一个参数是一个接口,要比较的数组是t[]数组类型,所以当我使用该方法时,应该如下所示: 元素。比较(其他)

那么如何将LinearList对象(其中LinearList是一个接口)转换为t[]类型的对象呢

public boolean compare(LinearList other){
ArrayLinearList<T> element2 = other;
// cast try:

 Integer size1 = other.size();
 Integer size2 = 0;


 for (int  i = 0; i< size; i++) 
  size2++;

    if (size2 == size1) 
      return true;
        else return false;

//else return false;

}
公共布尔比较(LinearList-other){
ArrayLinearList元素2=其他;
//试演:
整数size1=other.size();
整数size2=0;
对于(int i=0;i
然后我得到了这个错误:
错误:不兼容的类型:LinearList无法转换为ArrayLinearList
ArrayLinearList元素2=其他;
^
其中T是一个类型变量:
T扩展了类ArrayLinearListTaller1中声明的可比性
其中CAP#1是一个新类型变量:
CAP#1将对象从捕获扩展到?
1错误

那么,如何将其他元素转换为元素类型T[],或者如何比较它们


如果有人能帮助我,我将非常感激:

声明应该是或
公共布尔比较(LinearListI)我已经尝试过了,当我尝试这样的东西时:
other=(T[])新对象[容量];
假设other现在被识别为类型T,但这样做我得到了:错误:不兼容类型:T[]无法转换为LinearListSure,因为数组不是
LinearList
。在
ArrayLinearList
类中是否有可用于此的合适构造函数?您是指此构造函数?
public ArrayLinearList(int initialCapacity){if(initialCapacity<1)抛出新的IllegalArgumentException(“initialCapacity必须大于等于1”);元素=(T[])新对象[initialCapacity];大小=0;}
不,我指的是一个数组中传递的构造函数,并将其直接分配给
元素
。我在ArrayLinearList中只有这两个构造函数:
公共ArrayLinearListTaller1(int initialCapacity){protected T[]元素;//受保护的元素数组int size;//数组中的元素数if(initialCapacity<1)抛出新的IllegalArgumentException(“initialCapacity必须大于等于1”);元素=(T[])新的可比较的[initialCapacity];大小=0;}公共ArrayLinearListAller1(){this(10);}