我厌倦了下面的问题。请帮忙?我有一个下面的界面
/**
* <T> Type of Timestamp. For ex: Date, long, Calendar etc
*
*/
public interface TimeStamp<T> extends Comparable<TimeStamp<T>>
{
/**
* Returns the timestamp.
* @return
*/
public T getTimeStamp();
}
在我的代码中,我有 2 个列表:
List<FileTimeStamp> f = new ArrayList<FileTimeStamp>();
List<DefaultTimeStamp> t = new ArrayList<DefaultTimeStamp>();
我想创建一个方法,该方法采用上述 2 个包含时间戳的列表,然后将它们合并。前任:
void merge(List<TimeStamp> l1, List<TimeStamp> l2)
{
l1.addAll(l2);
Collections.sort(l1);
}
但是上面会产生编译时警告。
void merge(List l1, List l2)
缺少泛型类 TimeStamp 的类型参数,
其中 T 是类型变量:T 扩展接口 TimeStamp 中声明的对象
我应该如何在没有任何编译时警告的情况下定义上述方法?我的应该是什么void merge(List<TimeStamp<????>> l1, List<TimeStamp<????>> l2)
???在左边是?