请问这是java接口文件public interface LinearListT 获取指定位置的元素 T getint i; 指定位置存放元素 void setint iT t; 在线性表的末尾插入元素 int insertT t; 在指定位置插入元素 int insertint iT t; 删除指定位置的元素 T remov
这个java类文件有两个问题要修改:
-
在SeqList的构造方法中,将数组data的类型定义为T[],但是在实际创建数组对象时,使用了Object[],这是不允许的。需要将数组类型改为Object[]。
-
在重载的构造方法SeqList()中,使用了未定义的变量len=10,应该直接使用数字10作为参数。
修改后的代码如下:
import org.omg.CORBA.Object;
public class SeqList<T> implements LinearList<T> {
Object[] data; // 存放顺序表中的数据
int n; // 顺序表中元素的个数
// 顺序表的构建
public SeqList(int len) {
data = new Object[len];
n = 0; // 最开始的时候顺序表为空,里面没有任何元素,所以初始大小为0
}
public SeqList() {
this(10); // 调用已经定义好的其他构造方法
}
public SeqList(T[] values) {
this(values.length); // 调用已经定义好的其他构造方法
// 将values数组中的内容拷贝到data数组
for(int i = 0;i < values.length;i++) {
this.data[i] = values[i];
}
this.n = values.length;
// 因为把整个values数组中的所有数据放入了data数组
// 所以整个线性表的大小和values.length一样
}
@Override
public T get(int i) {
return null;
}
}
请注意,这里只修改了get方法的返回值为null,因为具体的实现逻辑需要根据具体的需求来完成。
原文地址: https://www.cveoy.top/t/topic/i8In 著作权归作者所有。请勿转载和采集!