无法通过CMD获取输入 - java

时间:2013-04-11 02:21:09

标签: java

正如标题所述,我无法得到任何人的任何意见。它应该回显InputTypeMismatch的错误,或者如果你做数字,那么它会说空引用错误。

有人可以纠正这个吗?这让我疯了。我不知道在哪里检查。

谢谢你提前:)

    Exception in thread "main" java.util.InputMismatchException
            at java.util.Scanner.throwFor(Unknown Source)
            at java.util.Scanner.next(Unknown Source)
            at java.util.Scanner.nextFloat(Unknown Source)
            at TestFile.promptsentence(TestFile.java:54)
            at TestFile.main(TestFile.java:43)

这是一个例子:

    public class TestFile(){

            Scanner inp = new Scanner(System.in);

            public static main(String[] args){
                    long inp = inp.NextLong();
                    // prompts
                    String input = Long.valueOf(inp);

                    System.out.println(input);

            }


    }

3 个答案:

答案 0 :(得分:-1)

TestFile f不在public void repart()的范围内。通过执行类似

的操作将其置于主要区域之外
public class TestFile {

    private TestFile f = new TestFile();

    public static main(String[] args){
        // Some Code
    }

    public void repart() {
        if(f.checksent(1) == true){
            // some code
        }
    }
}

现在应该正常工作。总的来说,我认为这不是一个很好的方式。如果我正在做这个任务(我假设它的任务)我会做2级文件。一个Main和一个TestFile,然后执行此操作。

// TestFile.java
public class TestFile {

    public TestFile() {
        // some constructor stuff
    }

    public void repart() {
        if(f.checksent(1) == true){
            // some code
        }
    }
}

// Main.java
public class Main{

    private TestFile f = new TestFile();

    private static TestFile f = new TestFile();

    public static main(String[] args){
        f.repart();
    }

}

这个imo是更好的方法。希望这会有所帮助。

答案 1 :(得分:-1)

我认为从这里开始Java Class and Object

会很有帮助

您遇到的错误是编译时错误

  • main()函数语法错误。它应该像public static void main(String[] args)
  • 您没有定义“checksent()”方法,而您正尝试访问它。

答案 2 :(得分:-2)

/* Here among class variables, outside any methods:*/

    Private TestFile f;

    public static void main(String[] args) {

        f = new TestFile();
        f.promptsentence();

    };

希望它足够清楚。

我没有对其余代码做任何陈述 - 只是回答关于对象f声明和赋值的问题。