Angular 由 javap 生成的类型的大括号表示法

Angular braces notation for types resulted by javap

在 java 探查器命令输出中,我一直在 angular 大括号中看到这些符号,例如

java.util.Queue<E>
java.util.TreeMap<K, V>

如果我错了,请纠正我;通过一些练习,我已经能够将 E 实体、K、V - 键值对联系起来。我见过其他像 java.lang.Iterable<T> 这样的人,我不知道 T 是什么意思。

谁能帮我说说这些符号叫什么以及 Java SE 中有多少这样的符号?

它们被称为仿制药。它们允许 method/class/interface 等在不影响类型检查的情况下对多种类型的对象(例如整数、字符串)进行操作。

参见:

您正在谈论 java 编程语言的一个方面,称为 泛型 You can read more about them here

使用的字母实际上并不重要。正如你所说,在java.util.TreeMap<K, V>界面中,使用了字母'K'和'V',可能是因为它们是单词"key"和"value"中的第一个字母, 但可以使用任何其他字母。 Java 不关心在定义通用 class 或接口时使用什么字母,这部分完全取决于你.