我有一些数据将按排序顺序排列(首先按排序顺序排列整个键,然后按随机顺序重复)。所以,我可以同时使用LinkedHashMap或TreeMap来保存顺序(对吧?)。那么我的问题是,哪一个更快,哪个更节省空间?
答案 0 :(得分:2)
LinkedHashMap的插入速度更快,因为在插入类似TreeMap时,它不会不必要地比较值,如@EJP所述。而且由于LinkedHashMap只需要前一个键和下一个键的链接,而TreeMap需要一个指向父节点的链接和1个以上儿童的链接,我认为TreeMap也会消耗更大的内存。
所以我的投票是针对LinkedHashMap的。更少的内存,更少的时间,当然还有更少的CPU。