调用布尔方法

时间:2017-10-08 07:28:44

标签: java methods while-loop compiler-errors

我对此程序的总体目标是验证用户输入的字符串实际上是有效数字。我需要使用至少两种方法,包括main方法。我已经阅读了许多与在main方法中调用用户定义的方法相关的帖子,但是我正在努力使我的工作。在声明我的isAValidNumber方法时,我不断收到错误"非法开始表达"。如何声明此方法以便我可以在main方法中调用它并有争议地运行它直到用户输入无效的无效数字?

import java.util.Scanner;

public class IsAValidNumber
{   
    public static void main(String[] args)
    {
        //prompt user for a valid number
        Scanner consoleInput = new Scanner(System.in);
        System.out.print("\nEnter a valid integer or floating point value: \n");

        String input = consoleInput.nextLine(); 


        /* while(isAValidNumber = true)
        {
            //
        } */

        public static isAValidNumber(String input)
        {
            for(int j=0;j<input.length();j++)
            {
                if(input.matches("\\d+(\\.\\d*)?|\\.\\d+") == true)
                {
                    boolean isAValidNumber = true;
                }
                else
                {
                    boolean isAValidNumber = false;
                }
            }
        }
    }
}

1 个答案:

答案 0 :(得分:1)

您无法在Java中的方法内声明方法。在isAValidNumber之外声明main(在它之前或之后,并不重要)你应该没问题:

public class IsAValidNumber
{   
    public static boolean isAValidNumber(String input)
    {
        // Method's body snippet for brevity's sake
    }

    public static void main(String[] args)
    {
        // Code that can call isAValidNumber
    }
}