java删除数组中重复元素

解决方案 »

  1.   

    int[] arr = new int[]{1,2,3,4,23,3,5,1};
    ArrayList<Integer> arrList = new ArrayList<Integer>();
    for(int i=0; i<arr.length; i++)
    {
    if(!arrList.contains(arr[i]))
    arrList.add(arr[i]);
    }
    Iterator<Integer> inter = arrList.iterator();
    while(inter.hasNext())
    System.out.println(inter.next());
      

  2.   

    package demo;import java.util.ArrayList;
    import java.util.Iterator;
    import java.util.List;public class Shanchu {
    public static void main(String[] args) {
    int[] nums = { 5, 6, 6, 6, 8, 8, 7 };
    List<Integer> numList = new ArrayList<Integer>();
    for (int i : nums)
    numList.add(i);
    System.out.println(numList); //做删除
    Iterator<Integer> it = numList.iterator();
    int temp = -1;
    if (it.hasNext())
    temp = it.next();
    while (it.hasNext()) {
    int i = it.next();
    if (i == temp) {
    it.remove();
    } else {
    temp = i;
    }
    }
    System.out.println(numList);
    }}
      

  3.   

    都這麽複雜啊
    public static void main(String[] args) {
    int[] nums = { 5, 6, 6, 6, 8, 8, 7 };
    List<Integer> numList = new ArrayList<Integer>();
    for (int i : nums)
    numList.add(i);
    Set<Integer> numSet = new HashSet<Integer>();
    numSet.addAll(numList);
    System.out.println(numSet);
    }
      

  4.   

    这个不错,通过集合转换,用treeset 还可以排序,呵呵
      

  5.   

    不用set也很容易的
    public static void main(String[] args) {
    String[] s = {"1","10","15","14","111","133","12","13","1","13"};
    List<String> l = new ArrayList<String>();
    for(String a:s){
    if(!l.contains(a)){
    l.add(a);
    }
    }
    System.out.println(l);
    }
      

  6.   

    最简单的方法就是丢到set集合中去~
      

  7.   


    import java.util.*;
    class TestSet 
    {
    public static void main(String[] args) 
    {
    Integer[] nums = { 5, 5, 6, 6, 6, 8, 8, 7, 11, 12, 12 };
    HashSet hset = new HashSet(Arrays.asList(nums));
    Iterator i = hset.iterator();
    while(i.hasNext()){
    System.out.println(i.next());
    }             }
    }
      

  8.   

    Set有一个构造方法 参数就是list
      

  9.   


    //简单的for循环
    for(int i=1;i<arr.length;i++){
      for(j=0;j<i;j++){
         if(arr[i]==arr[j]){
           随便干嘛。。
            }
    }
    }
      

  10.   

    我们项目中的工具类,用来去掉List中空值和相同项的。
    public <T> List<T> removeSameItem(List<T> list) {
    List<T> difList = new ArrayList<T>();
    for(T t : list){
    if(t != null && !difList.contains(t)){
    difList.add(t);
    }
    }
    return difList;
    }
      

  11.   

    再稍微简单点的(不考虑性能的话):    Integer[] nums = { 5, 6, 6, 6, 8, 8, 7 };
        Set<Integer> numSet = new LinkedHashSet<Integer>(Arrays.asList(nums));
        System.out.println(numSet);
      

  12.   

    一句话搞定:
    System.out.println(new LinkedHashSet<Integer>(Arrays.asList(5, 6, 6, 6, 8, 8, 7)));
      

  13.   

    先把数组中元素放入set集合中啊,然后从set中取出来,得到的就是去除重复数据之后的
      

  14.   

    int[] nums = { 5, 6, 6, 6, 8, 8, 7 };
            HashSet<Integer> set = new HashSet<Integer>();
            for (int i : nums) {
                set.add(i);
            }
      

  15.   

    public static void main(String[] args) {
            String[] s = {"1","10","15","14","111","133","12","13","1","13"};
            List<String> l = new ArrayList<String>();
            for(String a:s){
                if(!l.contains(a)){
                    l.add(a);
                }
            }
            System.out.println(l);
        }