无法使用Java

时间:2018-11-11 02:27:39

标签: java set nested-loops

我检查了所有内容,但由于某种原因仍然重复了最后一个数组。 似乎是什么问题? 在程序中,第一件事是要求用户输入数组大小,然后输入该大小的数字。 接下来,代码将删除用户输入的重复号码。 最后,输出将显示数组的元素,没有任何重复。

下面是相同的程序/代码:-

    import java.util.Scanner;

     public class Finals
     {
      private static Scanner sc;

      public static void main(String[] args)
      {

        int tao, hayop, counter, bilang = 1, result, taonghayop;

        sc = new Scanner(System.in);

        System.out.print("Enter array size: ");

        int userInput = sc.nextInt();
        int userInput1 = userInput;
        int[] userDatabase = new int[userInput];

        for(counter=0;counter<userInput;++counter)
        {
            System.out.print("Enter array elements of index " +bilang +": ");
            userDatabase[counter] = sc.nextInt();
            bilang++;
        }

        for(tao=0;tao<userInput;++tao)
        {
            for(hayop=tao+1;hayop<userInput;)
            {

                if(userDatabase[tao] == userDatabase[hayop])
                {
                    for(taonghayop = hayop; taonghayop<userInput;taonghayop++)
                    {
                        userDatabase[taonghayop] = userDatabase[taonghayop+1];
                    }
                    userInput = userInput-1;
                }       
                else
                    hayop++;        
            }
        }

        System.out.print("The number(s) are: " + userDatabase[counter]);

        for (result=0; result<=userInput1; result++) 
        {
            if (result<userInput1) 
            {
                System.out.print(" ");
                System.out.print(userDatabase[result]);
                System.out.print(",");

            }
            else if(result==userInput1)
            {
            System.out.print(" and ");
                System.out.print(userDatabase[result]);
                System.out.print(".");
                break;
            }
        }
    }
}

0 个答案:

没有答案