java泛型系列 | 一、为什么使用泛型
Java泛型文档翻译
一、为什么使用泛型
简而言之,泛型使类型(类和接口)在定义类、接口和方法时成为参数。 与在方法声明中使用的更熟悉的形式参数非常相似,类型参数为您提供了一种对不同输入重复使用相同代码的方法。
区别在于形式参数的输入是值,而类型参数的输入是类型。使用泛型的代码比非泛型代码有很多好处:
-
编译时进行更强的类型检查
Java 编译器对泛型代码应用强类型检查,并在代码违反类型安全时发出错误。 修复编译时错误比修复运行时错误更容易,后者很难发现。
-
消除类型转换
以下没有泛型的代码片段需要强制转换:
List list = new ArrayList(); list.add("hello"); String s = (String) list.get(0);
当使用泛型时,代码不需要强制转换:
List<String> list = new ArrayList<String>(); list.add("hello"); String s = list.get(0); // no cast
-
使程序员能够实现通用算法
通过使用泛型,程序员可以实现适用于不同类型集合的泛型算法,可以自定义,并且类型安全且易于阅读。
touch fish