-->

ArrayList性能问题

2020-11-10 12:55发布

问题:


上图摘自官网,我想说,既然ArrayList类都不推荐使用了,那存在的意义何在?又有什么时候必须使用它呢?

回答1:

有些场景会需要存一些类型不一致的对象 会使用到arraylist,建议使用泛型而不建议使用它主要原因是如果存值类型的对象的话 arraylist会涉及到频繁的装箱 装箱过程费时 而泛型list不会涉及到装箱



回答2:

估计是为了兼容旧项目、旧代码吧



回答3:

频繁的装箱拆箱操作降低性能是必然的,如注解所说,他是为了存放异类集合,其他的,跟你正常用一个List<T>无异,只不过 T是object。他最后说明了,不应使用非泛型集合,参阅地址,你去看看呗



回答4:

.net 刚出来的时候是没有泛型的。所以这些只是为了那些使用特别老的版本留着的。