Java:使用vector列出数字中未出现的所有数字

Java:使用vector列出数字中未出现的所有数字,java,arrays,vector,integer,Java,Arrays,Vector,Integer,如何读入一个正整数,然后使用向量列出数字中未出现的所有数字。所列数字应按升序排列。 您可以假设输入值不包含前导零 因此,样本输出应如下所示: 输入一个号码:73105 73105中缺少数字:2 4 6 8 9 我的代码正确吗 Vector<Integer> list; list=new Vector<Integer>(); Scanner sc=new Scanner(System.in);

如何读入一个正整数,然后使用向量列出数字中未出现的所有数字。所列数字应按升序排列。 您可以假设输入值不包含前导零

因此,样本输出应如下所示:

输入一个号码:73105 73105中缺少数字:2 4 6 8 9

我的代码正确吗

Vector<Integer> list;                                       
list=new Vector<Integer>();

Scanner sc=new Scanner(System.in);
System.out.printf("Enter a number: ");
int no=sc.nextInt();
System.out.printf("Missing digits in " + no + ":");

do{
    list.add(no%10+1, no%10);
    no=no/10;
    }while(no!=0);

for(int i=0;i<10;i++){
if(list.isEmpty(i)){
System.out.printf(" " + i);
}
else{
continue;
}
}
向量列表;
列表=新向量();
扫描仪sc=新的扫描仪(System.in);
System.out.printf(“输入一个数字:”);
int no=sc.nextInt();
System.out.printf(“在“+no+”中缺少数字:”);
做{
列表.添加(编号%10+1,编号%10);
否=否/10;
}而(否!=0);

对于(int i=0;i您可以使用
TreeSet
存储从1到10的数字,然后您可以创建一个包含您的数字的集合。您可以通过调用
removeAll
方法来获取不在您的数字中的数字。

我想说您已经接近了,但我会做出这些更改

    Vector<Integer> list=new Vector<Integer>();
    Scanner sc=new Scanner(System.in);
    System.out.printf("Enter a number: ");
    int no=sc.nextInt();
    System.out.printf("Missing digits in " + no + ":");

    do{
        list.add(no%10);
        no=no/10;
    }while(no!=0);

    for(int i=0;i<10;i++){
        if(!list.contains(i)){
            System.out.printf(" " + i);
        }
    }
向量列表=新向量();
扫描仪sc=新的扫描仪(System.in);
System.out.printf(“输入一个数字:”);
int no=sc.nextInt();
System.out.printf(“在“+no+”中缺少数字:”);
做{
列表。添加(编号%10);
否=否/10;
}而(否!=0);

对于(inti=0;判断它是否正确的唯一方法是运行它,然后看看会发生什么。“我的代码正确吗?”-我们不是质量保证部门。值得一提的是,我可以看到两个编译错误,而不必太费劲。我会说“不”,因为列表。isEmpty不接受任何参数。这个问题似乎离题了,因为它是一个代码审查请求。当我编译并运行它时,我输入了数字4532,它会给我一个错误:4532中缺少数字:线程“main”java.lang.ArrayIndexOutOfBoundsException:3>0在java.util.Vector.insertElementAt(Vector.java:594)在java.util.Vector.add(Vector.java:810)在MissingDigitsV2.main(MissingDigitsV2.java:16)在MissingDigitsV2.main(MissingDigitsV2.java:16)确保只使用一个参数调用list.add。