问题是这样的
有两个ArrayList像这样A1:[1,2,3,4,5,6,7,8,9.......](此列无重复数据)
A2:[t,d,g,r,h,t,t,y,s.......](此列有重复数据)两者的长度是一样的
要求实现一个方法
传进去一个ArrayList 按照对应的位置转换 返回另一ArrayList
比如我传入[1,3,5,7] 应该返回[t,g,h,t]本来觉得挺好做的 但是突然卡住不知道咋下手了 =.-!
小弟学生 请求赐教

解决方案 »

  1.   

    参数传入后同第一个数组比较,取出第一个数据的下标,作为第二个的下标取出数据存到另一个list里面,就OK了。方法可能不是最好的!
      

  2.   


    public ArrayList reflact(ArrayList al){
        HashMap hm=new HashMap();
        for(int i=0;i<A1.size();i++){
           hm.put(A1.get(i),A2.get(i));
        }
        ArrayList al2=new ArrayList();
        for(int i=0;i<al.size();i++){
           al2.add(hm.get(a.get(i)));
        }
        return al2;
    }
      

  3.   

    有点错 修改下
    public ArrayList reflact(ArrayList al){
        HashMap hm=new HashMap();
        for(int i=0;i<A1.size();i++){
           hm.put(A1.get(i),A2.get(i));
        }
        ArrayList al2=new ArrayList();
        for(int i=0;i<al.size();i++){
           al2.add(hm.get(al.get(i)));
        }
        return al2;
    }
      

  4.   


    我怎么就没想到用HashMap呢 - -
    功力尚浅啊....