JAVA泛型之泛型方法的定义和使用方式,
分享于 点击 39792 次 点评:36
JAVA泛型之泛型方法的定义和使用方式,
目录
- 1.泛型方法的定义和语法
- 1.1 定义
- 1.2 语法
- 2.泛型方法的使用
- 2.1 普通泛型方法
- 2.2 静态泛型方法
- 2.3 泛型方法中的可变参数
- 总结
1.泛型方法的定义和语法
1.1 定义
泛型方法 是在 调用方法 的时候指明泛型的具体类型。
【泛型方法 能够使方法独立于类的处理指定的类型。】
1.2 语法
修饰符 <T,E,…> 返回值类型 方法名(形参列表){ 。。。。。。 }
修饰符与返回值类型中间的 泛型标识符 <T,E,…>,是 泛型方法的标志,只有这种格式声明的方法才是泛型方法。
泛型方法声明时的 泛型标识符 <T,E,…> 表示在方法可以使用声明的泛型类型。
与泛型类相同,泛型标识符可以是任意类型,常见的如T,E,K,V 等。
泛型方法可以声明为 static 的,并且与普通的静态方法是一样的。
2.泛型方法的使用
2.1 普通泛型方法
- 声明
/** * author : northcastle * createTime:2021/10/23 * 泛型方法的定义 */ public class GenericMethod { //1.普通的泛型方法 public <T> String commonMethod(String name,T t){ String res = ""; res += name +"-"+ t; System.out.println("普通泛型方法 : "+res); return res; } }
- 调用
/** * author : northcastle * createTime:2021/10/23 */ public class GenericMethodApplication { public static void main(String[] args) { //1.调用普通泛型方法 GenericMethod genericMethod = new GenericMethod(); String commonRes01 = genericMethod.commonMethod("001", "bb"); System.out.println(commonRes01); String commonRes02 = genericMethod.commonMethod("002", 100); System.out.println(commonRes02); String commonRes03 = genericMethod.commonMethod("003", true); System.out.println(commonRes03); System.out.println("=================="); } }
- 运行结果
普通泛型方法 : 001-bb
001-bb
普通泛型方法 : 002-100
002-100
普通泛型方法 : 003-true
003-true
==================
2.2 静态泛型方法
- 声明
/** * author : northcastle * createTime:2021/10/23 * 泛型方法的定义 */ public class GenericMethod { //2.静态的泛型方法 public static <T,E> String staticMethod(String name,T t,E e){ String res = ""; res += name +"-"+ t +"-"+ e; System.out.println("静态泛型方法 : "+res); return res; } }
- 调用
package com.northcastle.genericmethod; /** * author : northcastle * createTime:2021/10/23 */ public class GenericMethodApplication { public static void main(String[] args) { //2.调用静态泛型方法 String staticRes01 = GenericMethod.staticMethod("001", "aa", "bb"); System.out.println(staticRes01); String staticRes02 = GenericMethod.staticMethod("002", 100, 'c'); System.out.println(staticRes02); String staticRes03 = GenericMethod.staticMethod("003", 12.05d, false); System.out.println(staticRes03); System.out.println("=================="); } }
- 运行结果
静态泛型方法 : 001-aa-bb
001-aa-bb
静态泛型方法 : 002-100-c
002-100-c
静态泛型方法 : 003-12.05-false
003-12.05-false
==================
2.3 泛型方法中的可变参数
- 声明
/** * author : northcastle * createTime:2021/10/23 * 泛型方法的定义 */ public class GenericMethod { //3.带可变参数的泛型方法 public <A> void argsMethod(A ... args){ for (A arg : args) { System.out.println(arg); } } }
- 调用
package com.northcastle.genericmethod; /** * author : northcastle * createTime:2021/10/23 */ public class GenericMethodApplication { public static void main(String[] args) { //3.调用可变参数的方法 genericMethod.argsMethod(1,2,300,400,500,600); System.out.println("=================="); } }
- 运行结果
1
2
300
400
500
600
==================
完成~
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持3672js教程。
您可能感兴趣的文章:- java中如何使用泛型方法比较大小
- Java Scala泛型(泛型方法,泛型类,泛型特质,上下界,协变、逆变、非变)
- 一篇文章带你了解java泛型--泛型类,泛型方法,泛型接口
- Java 泛型详解(超详细的java泛型方法解析)
- Java泛型类与泛型方法的定义详解
- Java定义泛型方法实例分析
- 浅谈java中定义泛型类和定义泛型方法的写法
用户点评