本文最后更新于85 天前,其中的信息可能已经过时,如有错误请发送邮件到3082654005@qq.com
泛型<>中的不能是基本数据类型,只有对象能放入,基本数据类型对应的包装类可以装入。
| 基本数据类型 | 对应的包装类 |
|---|---|
byte | Byte |
short | Short |
int | Integer |
long | Long |
float | Float |
double | Double |
char | Character |
boolean | Boolean |
1. 泛型类(Generic Class)
在类名后面用
<T> 来声明一个类型参数。T 是一个占位符,可以用任何大写字母(如 K, V, E 等)代替,常见的约定有:T – TypeE – Element (常用于集合,如 List<E>)K – KeyV – ValueN – Number? – 通配符3. 泛型方法(Generic Method)
在方法的返回值前声明类型参数
<T>。泛型方法可以存在于普通类中,也可以存在于泛型类中。泛型方法中的类型参数 T 与泛型类的 T 无关。三、类型通配符(Wildcard)和边界(Bounded)
这是泛型中比较难理解但非常重要的部分。
1. 上界通配符
<? extends T>表示“未知类型,但它是
T 或其子类”。只能从中读取数据(生产者),不能写入(消费者)。2. 下界通配符
<? super T>表示“未知类型,但它是
T 或其父类”。只能向其写入 T 类型的数据(消费者),读取出来的东西只能是 Object。

