案例A:
List<String> MyList;
while(index<100) {
MyList = MyObject.get(MyIndex);
}
案例B:
List MyList;
while(index<100) {
MyList = (List<String>) MyObject.get(MyIndex);
}
以上哪个会更快?
对于情况 B,我假设动态转换发生在整个循环中。因此,我假设第二个可能比第一个慢。
请告诉我哪一个可以更快?
最佳答案
Java 泛型是编译时抽象。没有证据表明它们留在字节码中。它们只是简化开发,但不影响性能。在字节码中,您的第一个代码示例看起来与第二个示例完全相同。 Javac 只会为您插入转换。
关于java - 对集合框架的动态类型转换效果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15198138/