Java 调用布尔方法

Java 调用布尔方法,java,methods,while-loop,compiler-errors,Java,Methods,While Loop,Compiler Errors,我使用这个程序的总体目标是验证用户输入的字符串实际上是一个有效的数字。我被要求至少使用两种方法,包括主方法。我读过很多关于在main方法中调用用户定义方法的帖子,但是我很难让我的方法发挥作用。在声明isAValidNumber方法时,我不断收到错误“表达式的非法开始”。我如何声明这个方法,以便从main方法中调用它并有争议地运行它,直到用户输入一个无效的数字 import java.util.Scanner; public class IsAValidNumber { publi

我使用这个程序的总体目标是验证用户输入的字符串实际上是一个有效的数字。我被要求至少使用两种方法,包括主方法。我读过很多关于在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;
                }
            }
        }
    }
}
import java.util.Scanner;
公共类IsAValidNumber
{   
公共静态void main(字符串[]args)
{
//提示用户输入有效数字
扫描仪控制台输入=新扫描仪(System.in);
System.out.print(“\n输入有效的整数值或浮点值:\n”);
字符串输入=consoleInput.nextLine();
/*while(isAValidNumber=true)
{
//
} */
公共静态isAValidNumber(字符串输入)
{

对于(int j=0;j您不能在Java中的方法内部声明方法。在
main
外部声明
isAValidNumber
(在它之前或之后都无所谓),您应该可以:

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
    }
}

把它移到main之外。这似乎奏效了。谢谢!为什么不直接使用java.lang.IntegerI中提供的Integer.parseInt(String s)API呢?我花了一个多小时试图弄清楚是怎么回事,所以我假设我对正则表达式匹配知之甚少,你能给isValidNumber添加一些返回类型吗?;)漂亮的catch@Rc`-)不是返回类型吗?@Chaos是,但我最初的帖子没有找到它。后来修复了这个粗心的遗漏。