Java 泛型的问题

[复制链接]
查看11 | 回复1 | 2021-1-27 06:41:27 | 显示全部楼层 |阅读模式
packagedsvrev;
importjava.time.LocalDate;
publicclasspaie{
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
LocalDate[]birthdayDates={
LocalDate.of(1996,12,23),
LocalDate.of(1996,11,2),
LocalDate.of(1996,10,3)
};
Pairmm=ArrayAlg.minmax(birthdayDates);
}
}
classArrayAlg
{
publicstatic>Pairminmax(T[]a)
{
Tmin=a[0];
Tmax=a[0];
for(inti=0;i0)min=a;
if(max.compareTo(a)(min,max);
}
}
classPair{
publicTmin;
publicTmax;
publicPair(Ta,Tb)
{
min=a;
max=b;
}
}
请问为什么我的eclipse不能识别pair呀所以我重新又写了一个pair类然后发现为什么调用的时候他显示minmax调用错误?
CannotcastfromPairtoPair这个是错误信息
请问为什么呀我不是泛型的吗为什么有出现个乱七八糟的谢谢你们了
分 -->
回复

使用道具 举报

千问 | 2021-1-27 06:41:27 | 显示全部楼层
CannotcastfromPairtoPair错误,因为publicstatic>Pairminmax(T[]a)泛型参数extendsComparable了,ChronoLocalDate才有继承Comparable
改成Pairmm=ArrayAlg.minmax(birthdayDates);
还有下面的内部类必须是静态才能有静态方法,创建内部类是newpaie().newPair(min,max);这种方式
既然eclipse有提示,看提升改吧
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行