两者的类似之处和不同之处
谢谢!

解决方案 »

  1.   

    ArrayList可以看成是可变长度的数组
    HashMap里的数据是按key,value成队存放的,知道key就能取得value
      

  2.   

    HashMap里的数据是按key,value成对存放的^-^
      

  3.   

    所谓map就是映射,是一系列的键-值对 
    如:Hashmap hm = new HashMap(); hm.put("1",new Integer(1));ArrayList al = new ArrayList();
    al.add(new Integer(1));
      

  4.   

    两个类实现的接口不一样:
    ArrayList implements Serializable, Cloneable, Iterable<E>, Collection<E>, List<E>, RandomAccess interfaces 
    HashMap implements Serializable, Cloneable, Map interfaces
    你可以按下面的方法定义两个对象:
    List<E> yourList = new ArrayList<E>();
    Map<K,V> yourMap = new HashMap<K,V>();
    注意:摸板类型要一致。
    向ArrayList中加对象,用yourList.add(E e);
    向HashMap中加对象,用yourMap.put(K k, V v);
    你可以用Collection<V> yourMap.values();获得映射中的对象返回类型为Collection型,再用get方法就可以获得每个对象。
      

  5.   

    楼上解释的都很清楚,。
    我就不多说了
    arrylist 是动态数组。如果在中间增加一个,
    就要把后面的向后推移
    他的搜索像数组一样根据索引index
    而hashmap 他是键-值的队列
    他是通过键来搜索到值
    并且没有顺序。可以接受空值!
      

  6.   

    ArrayList可以看成是可变长度的数组
    HashMap里的数据是按key,value成队存放的,一对一的映射