Java 如何在数组中创建一个列表集合?
我的任务是基于简单数组创建泛型集合的实现。集合应该实现列表接口。目前我有:Java 如何在数组中创建一个列表集合?,java,arrays,list,collections,Java,Arrays,List,Collections,我的任务是基于简单数组创建泛型集合的实现。集合应该实现列表接口。目前我有: import java.util.*; import java.util.List; import java.util.ArrayList; import java.util.ListIterator; import java.util.Iterator; public class Main { public static void main(String[] args) {} } class MyColle
import java.util.*;
import java.util.List;
import java.util.ArrayList;
import java.util.ListIterator;
import java.util.Iterator;
public class Main {
public static void main(String[] args) {}
}
class MyCollection<T> implements List<T>{
T[] tab;
MyCollection() {
this.tab = (T[])new Object[10];
}
public List subList(int from, int to){
return new ArrayList();
}
public <T> T[] toArray(T[] t){}
public T[] toArray(){}
public ListIterator listIterator(){}
public ListIterator listIterator(int i){}
public Iterator iterator(){}
public boolean contains(){}
public boolean contains(Object o){}
public boolean isEmpty(){}
public int size(){}
public int lastIndexOf(Object o){}
public int indexOf(Object o){}
public T remove(int i){}
public boolean remove(Object o){}
public void clear(){}
public void add(int i, T t){}
public boolean add(T t){}
public T set(int i, T t ){}
public T get(int i){}
public boolean retainAll(Collection c){}
public boolean removeAll(Collection c){}
public boolean addAll(int i, Collection c){}
public boolean addAll(Collection c){}
public boolean containsAll(Collection c){}
}
import java.util.*;
导入java.util.List;
导入java.util.ArrayList;
导入java.util.ListIterator;
导入java.util.Iterator;
公共班机{
公共静态void main(字符串[]args){}
}
类MyCollection实现列表{
T[]选项卡;
MyCollection(){
this.tab=(T[])新对象[10];
}
公共列表子列表(int-from,int-to){
返回新的ArrayList();
}
公共T[]T阵列(T[]T{}
公共T[]toArray(){}
公共ListIterator ListIterator(){}
公共ListIterator ListIterator(int i){}
公共迭代器迭代器(){}
公共布尔包含(){}
公共布尔包含(对象o){}
公共布尔值isEmpty(){}
公共整数大小(){}
公共int lastIndexOf(对象o){}
public int indexOf(Object o){}
公共T删除(int i){}
公共布尔移除(对象o){}
public void clear(){}
公共void add(inti,tt){}
公共布尔加法(T){}
公共T集(inti,tt){}
公共T get(int i){}
公共布尔保留(集合c){}
公共布尔removeAll(集合c){}
公共布尔addAll(int i,集合c){}
公共布尔addAll(集合c){}
公共布尔containsAll(集合c){}
}
如果数据存储在数组中,如何实现所需的方法?例如,如何为数组编写listIterator?从简单的方法开始(例如
get
和set
)。然后继续讨论更难的问题,看看是否可以用更容易的问题来实现它们。如果你陷入困境,那就换一种方法——它可能会让你对陷入困境的方法有所了解
迭代器可能是最棘手的,所以也许把它们留到最后。提示:迭代器可能需要是内部类;知道他们在名单上的位置;您可以查看java.util.ArrayList的源代码,以了解一些实现模式。您的圆圈入门不错。现在是时候画猫头鹰的其余部分了!这是家庭作业吗?如果不是,答案是
ArrayList
。