arraylist中去除重复元素的问题:

1 用两个集合来存:

 

  ArrayList array=new ArrayList();
      array.add("a");
      array.add("b");
      array.add("a");
      array.add("a");
      System.out.println(array);
      ArrayList array1=new ArrayList();
      Iterator it=array.iterator();
      while (it.hasNext())
      {
      String s=(String)it.next();
      if (!array1.contains(s))
      {
      array1.add(s);
      }
      }
      System.out.println(array1);

 

2 不开新的集合

for (int i=0;i<array.size();i++)
      {
      for (int j=i+1;j<array.size();j++)
      {
      if (array.get(i).equals(array.get(j)))
      {
      array.remove(j);
      j--;
      
      }
      }
      }
      
      System.out.println(array);

有一个需要注意的小问题:如果有两个连续的重复的元素的话,选择排序会少删除一个,因为当删除完第一个时 y++,但是现在y的那个位置上的元素还是重复的,被略过了