一、引入:
需求: 定义一个方法可以接收任意类型的参数,而且返回值类型必须要与实参的类型一致。
如何改进呢?
二、自定义泛型:自定义泛型就是一个数据类型的占位符或者是一个数据类型的变量。
三、方法上自定义泛型:
1、格式
修饰符 <声明自定义的泛型>返回值类型 函数名(使用自定义泛型 ...){
}
2、在泛型中不能使用基本数据类型,如果需要使用基本数据类型,那么就使用基本数据类型对应的包装类型:
byte——>Byte
short——>Short
int——>Integer
long——>Long
double——>Double
float——>Float
boolean——>Boolean
char——>Character
3、方法泛型注意的事项:
1)在方法上自定义泛型,这个自定义泛型的具体数据类型是在调用该方法的时候,传入实参时确定的。
2)自定义泛型只要符合标识符的命名规则即可,但是自定义泛型我们一般都习惯使用一个大写字母表示。
最常使用的大写字母: T Type / E Element
4、案例:
1)需求: 编写一个数组的工具类
2)代码实现:
a)MyArrays部分:
b)main()方法部分: