我用 HashMap多 但是这个占内存多些
Hashtable有点同步的处理
但是查找应该是Hashmaop好些

解决方案 »

  1.   

    ArrayList就是可变数组
    HashMap就是字典
    不过Java的容器写起来真的很繁琐阿,我现在用Python,这些list, tuple, dictionary用起来太方便了
      

  2.   

    HashMap多。
    虽然HashMap需要通过key来指定value,有点像c里面的指针。效率上可能开销大点,但是便于增删修改。
    举个例:ArrayList就像寄普通信件,HashMap就像寄包裹。
    相对而言信件可能比包裹所需要的时间少,但是一旦丢失信件邮局在通常情况下是无法帮你将其找回。
    而包裹你需要通过签单到邮局领取,也许你会觉得麻烦,但如果没有包裹收到需要查找的话,只要通过签单上的信息,邮局就可以帮你检查你的包裹是丢失还是由于其他原因延迟送到。比较方便。(上述只是根据本人的理解举例说明,有不同意见欢迎继续探讨。附带:我是菜鸟)
      

  3.   

    zhg1818() 举的例子很易懂
    放入HashMap中的对象一定要覆写hashCode()吗?
    那么几百个对象,那不就要写呆了
      

  4.   

    ArrayList可变数组,但是使用的时候最好确定实际的大小,否则如果超出,还是要将原数组内存复制到新的空间。stringbuffer,Vector一样也有这个特点!
    Vector加同步锁,他不加同步锁!
    HashMap没有同步的字典类,对整个容器不加锁
    Hashtable同步的字典类,对整个容器加锁
    两个hash使用根据实际情况。如果只是对其中的元素操作同步,就可以用map,降低锁的粒度!如果对容器同步,只能用table了!
      

  5.   

    HashMap存取很消耗时间,查询节省时间,如果频繁查询,使用HashMap
    如果存取操作较多,使用Collection