ArrayList depart_list=new ArrayList();

解决方案 »

  1.   

    单步走了,我设置了一个boolean a=depart_list.contains(departbean);,然后发现它的值总是false,也就是说if(!depart_list.contains(departbean))根本就不判断,而实际上,是有重复的
      

  2.   

    这种情况比较有意思,可以推荐给faqdepartBean departbean = new departBean( (String) temp.elementAt(0),(String) temp.elementAt(1));
    这一句每一次都创建新的对象所以       if(!depart_list.contains(departbean))
    depart_list里面的对象的内存地址都是不一样的,尽管他们的值可能重复
    明白吗?你只能遍历整个ArrayList,然后用equals比较
      

  3.   

    明白了,遍历arraylist如下:看看对不对
    1:boolean a = true;
           Iterator it = depart_list.iterator();
           while (it.hasNext()) 
           {
          String s = it.next().toString();
          String subs = s.substring(0, 2);
          String newbmbh=(String)departbean.getBmbh();
          
          if (newbmbh.equals(subs))
             {
               a=false;
             }
           }
           if(a)
             {
              depart_list.add(departbean);
             }
    -----------------------------
    String s = it.next().toString();
    这句好象取不出东西,是怎么回事?
       
      

  4.   

    object强制转换成string行不?如:
    String s=(String)arraylist.get(i);