程序在遇到Scanner时终止

时间:2014-05-08 01:09:33

标签: java

以下是我的代码段

public int[] factoring(){
        int factors[]=new int[10];
        int i=1,k=0,n;


            System.out.println("Please enter n");
            Scanner sc=new Scanner(System.in);

        n=sc.nextInt();

        System.out.println(n);
        while(i<=n){
        if(n%i==0){
            factors[k]=i;
            System.out.println(factors[k]);
            k++;
            }
        i++;
        }
        return factors;

    }

我无法为n输入值,程序在遇到Scanner对象时会终止。

2 个答案:

答案 0 :(得分:1)

我认为你的意思是当你尝试使用&#34; javac&#34;编译程序时它失败了。如果是这样,您需要导入扫描仪类。添加

import java.util.Scanner;

在您计划的适当位置。

祝你好运!

答案 1 :(得分:0)

很抱歉没有将此添加到评论中,但我不知道如何在评论中发布代码。

它不太可能是IDE,特别是如果你正在使用Eclipse或Netbeans。虽然此时可能出现任何问题,但您的计算机上可能存在损坏的文件或其他内容。

此代码有效吗?

package testscanner;

import java.util.Scanner;

public class TestScanner {

    public static void main(String[] args) {
        int n;
        System.out.print("Enter a number: ");
        Scanner sc=new Scanner(System.in);
        n=sc.nextInt();
        System.out.println("n = " + n);
    }

}

确保输入光标所在的数字&#34;输入数字:&#34;而不是在代码窗口中。

另外,是否有某些原因您没有发布整个班级或整个错误消息?剪切和粘贴使其变得简单。感谢您并尝试将其缩减为相关代码,但到目前为止您发布的代码并没有出现错误。

祝你好运!