lrqlrq1128 2021-11-05 04:09 采纳率: 83.3%
浏览 26
已结题

泛型类,数据类型一直报错,但提示的类型一样,恳请各位帮助解答!

我定义了一个泛型类SortedArrayList继承Arraylist,想定义一个方法:当add对象到arraylist集合中时进行排序,但是运用get方法时数据类型一直报错,请问各位我这个问题改如何解决?衷心感谢各位的帮助!能有效解决问题必采纳!

img

  • 写回答

1条回答 默认 最新

  • BCS-点心 2021-11-05 09:28
    关注

    这里使用的get方法是继承Arraylist的,返回值是泛型E,跟你这里定义的E不是一个E,所以你获取value时要做一个强转
    下面if判断时你也给get做个强转试一下
    最后的add方法用的也是继承来的,你传入的value时你当前的泛型E,跟方法需要的E不是一个E,所以报错类型错误
    ======
    你想在添加到集合时进行排序,首先集合工具类本身有排序方法,直接写个方法实现先添加和排序即可,不用自己继承再重写
    其次,如果你非要自己重写,应该考虑下装饰者模式的使用

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月13日
  • 已采纳回答 11月5日
  • 修改了问题 11月5日
  • 创建了问题 11月5日