很明显,像 ArrayList 一样,它是一个装满“泛型”类型项目的容器。
除了作为容器之外,一个类如何使用泛型?有什么常见的用法吗?
谢谢!
一个简单的例子是Comparable<T>
public class Person implements Comparable<Person>
这使您可以以自然的方式将一个人与另一个人进行比较。
同样有Comparator<T>
:
public class NameComparator implements Comparator<Person>
这使您可以以特定方式比较任何两个人。这些接口都不是关于“容器”的。
然后有类似 的类型Future<V>
,表示未来某个时间类型值的承诺V
(基本上是异步操作)。现在你可以把它想象成一种容器,但它不是一个集合......
从根本上说,只要您有一个操作或类型,该操作或类型通过类型有用地参数化(可能带有约束)以保持类型安全,泛型就很有用,但可以使用该类型参数的各种不同类型参数。