拆分字符串并将其放入int数组(无重复的int)Java

拆分字符串并将其放入int数组(无重复的int)Java,java,arrays,string,input,int,Java,Arrays,String,Input,Int,所以我有一个输入,用户创建尽可能多的用户ID int,就像他感觉用逗号隔开一样,例如:1,3,12,5。。。 但我必须将用户输入的字符串分解,并将其放入int数组中。 此外,不能有任何重复的用户ID。为什么这个代码是错误的 private static Editor inicio(Scanner in){ int[] users=null; System.out.println("What are the users you wish to create? (Separ

所以我有一个输入,用户创建尽可能多的用户ID int,就像他感觉用逗号隔开一样,例如:1,3,12,5。。。 但我必须将用户输入的字符串分解,并将其放入int数组中。 此外,不能有任何重复的用户ID。为什么这个代码是错误的

   private static Editor inicio(Scanner in){

    int[] users=null;

    System.out.println("What are the users you wish to create? (Separate by commas)");
    String option = in.nextLine();
    if (option.contains(",")){
        do{
            String[] vetorString = option.split(",");
            for(int i = 0; i < vetorString.length; i++) {
                users[i] = Integer.parseInt(vetorString[i]);
            }
        } while(hasUtilizador(users));
    }

    private static boolean hasUtilizador(int[] users){

       boolean duplicate=false;
       for (int j=0 ; j < users.length ; j++)
          for (int k=j+1 ; k < users.length ; k++)
             if (k!=j && users[k] == users[j])
                 duplicate=true;
          return duplicate;
    }
这是错误的,因为

users[i] = Integer.parseInt(vetorString[i]);
对空数组调用。在开始向用户分配值之前,请使用

users = new int[vectorString.length];
尝试使用并插入“,”作为delimeters