m0_63145759 2022-09-27 09:35 采纳率: 84.2%
浏览 38
已结题

为什么不能用泛型?有人能解释一下吗?

img

为什么参数不能用泛型,改成指定类型后就可以了,这是什么问题吗?那怎么改才能让这个方法变成顺序表通用的,不只用于Integer 类型

img

  • 写回答

3条回答 默认 最新

  • Java大魔王 2022-09-27 09:41
    关注

    第一处,泛型直接不能直接用大小于号比较,可以用compareTo去比较大小
    第二处,泛型和整形x,y比较大小肯定是不行的,同样的,把入参x和y改为泛型T,然后用compareTo方法 去比较大小

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
  • 莪是男神 2022-09-27 09:52
    关注

    因为泛型并不是一个具体的数据类型,所以无法直接用于比较,像你那么写肯定会报错
    如果你想实现一个泛型数组的排序,通常的做法是:

    1. 方法内部实现将泛型数组转为 Object[] 数组
    2. 再调用 compartTo() 方法对其元素进行逐个比较
    评论 编辑记录
  • Tomshidi 2022-09-27 09:43
    关注

    你用泛型,就意味着类型不确定,Integer确实可以用<比较,数字类型都可以,但是编译器不知道你从list里get出来的具体是什么类型,不知道具体类型也就无法使用比较运算符。

    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 10月5日
  • 已采纳回答 9月27日
  • 创建了问题 9月27日

悬赏问题

  • ¥15 QT 实现 RSTP 语音对讲功能
  • ¥50 AES魔改之后的安全性关于PRF(相关搜索:密码学)
  • ¥15 用C语言写的一个程序遇到了两个问题第一是偏移正确但读取不到坐标,第二个问题是自己定义的函数实现不了获取指定进程模块。
  • ¥15 在安装Anaconda时总是闪退怎么办?
  • ¥15 对图中电路进行以下几个方面的分析
  • ¥15 对图中电路进行以下几个方面的分析
  • ¥15 对图中电路进行以下几个方面的分析
  • ¥15 对图中电路进行以下几个方面的分析
  • ¥500 抖音主页视频预存加载卡bug
  • ¥15 用汇编语言编写51单片机,定时闹钟程序