是的,但如果您尝试访问非节点元素,就像它是节点一样,您将获得类强制转换异常.泛型在(for)运行时被丢弃.
例如:
import java.util.*;
import java.awt.Rectangle;
public class test {
public static void main(String args[]) {
List<Rectangle> list = new ArrayList<Rectangle>();
/* Evil hack */
List lst = (List)list;
/* Works */
lst.add("Test");
/* Works, and prints "Test" */
for(Object o: lst) {
System.err.println(o);
}
/* Dies horribly due to implicitly casting "Test" to a Rectangle */
for(Rectangle r: list) {
System.err.println(r);
}
}
}
Run Code Online (Sandbox Code Playgroud)