如何在不使用java中java.util的任何集合的情况下从数组中删除重复的数字

时间:2018-04-19 14:07:19

标签: java arrays

下面的代码片段显示了如何在不使用任何集合(如HashSet,ArrayList等)的情况下从数组中删除重复的整数...

1 个答案:

答案 0 :(得分:-4)

public class UniqueElementinAnArray 
{
    public static void main(String[] args) 
    {
        int[] a = {10,10,10,10,10,100};
        int[] output = new int[a.length];
        int count = 0;
        int num = 0;

        //Iterate over an array
        for(int i=0; i<a.length; i++)
        {
            num=a[i];
            boolean flag = check(output,num);
            if(flag==false)
            {
                output[count]=num;
                ++count;
            }

        }

        //print the all the elements from an array except zero's (0)
        for (int i : output) 
        {
            if(i!=0 )
                System.out.print(i+"  ");
        }

    }

    /***
     * If a next number from an array is already exists in unique array then return true else false
     * @param arr   Unique number array. Initially this array is an empty.
     * @param num   Number to be search in unique array. Whether it is duplicate or unique.
     * @return  true: If a number is already exists in an array else false 
     */
    public static boolean check(int[] arr, int num)
    {
        boolean flag = false;
        for(int i=0;i<arr.length; i++)
        {
            if(arr[i]==num)
            {
                flag = true;
                break;
            }
        }
        return flag;
    }

}