Java 布尔错误(FibonacciNumbers)

Java 布尔错误(FibonacciNumbers),java,Java,首先,我不是要求任何人做任何事情,只是需要一点帮助来修复布尔错误。我输入false,但程序停止。我有两个节目 我进行计算的第一部分: class FibonacciNumbers { FibonacciNumbers() {} //default constructor public int fOf(int n) { if (n == 0) //the base case { return 0; } el

首先,我不是要求任何人做任何事情,只是需要一点帮助来修复布尔错误。我输入false,但程序停止。我有两个节目

我进行计算的第一部分:

class FibonacciNumbers {

    FibonacciNumbers() {} //default constructor

    public int fOf(int n) {
        if (n == 0) //the base case
        {
            return 0;
        } else if (n == 1) {
            return 1;
        } else {
            return fOf(n - 1) + fOf(n - 2);
        }
    }
}
第二,主要方法是:

import java.util.*;
public class FibonacciNumbersTesters {

    public static void main(String[] args) {
        FibonacciNumbers fNumbers = new FibonacciNumbers();    //creates new object
        Scanner in = new Scanner(System.in);
        String again;
        String test;
        boolean IsRepeat = true;
        boolean isQuit;

        try {
            isQuit = false;
            while (!isQuit) {

                System.out.print("Enter the number you want to convert to Fibanocci('q' to quit): ");
                int n = in.nextInt();
                System.out.print("The Fibanocci number for " + n + " is: ");
                n = fNumbers.fOf(n);
                System.out.println(n);
                System.out.print("Do you want to run again? (Y or N):  ");
                again = in.next();
                if (again.equalsIgnoreCase("N")) {

                    System.out.println("Thank you! Please terminate the program by entering 'Q' or 'q' OR you can cotinue by entering anything else: ");
                    String toQuit = in.next();

                    if ((toQuit.charAt(0) == 'q') || (toQuit.charAt(0) == 'Q')) {
                        System.out.println("Good-bye!");
                        isQuit = true;

                    }
                } else {
                    IsRepeat = true;
                }
            }
        } catch (InputMismatchException ex) {

            test = in.nextLine();
            if ((test.charAt(0) == 'q') || (test.charAt(0) == 'Q')) {
                System.out.println("Good-bye!");
                isQuit = true;

            } else {
                System.out.println("Invalid input!");
                System.out.println("Try again! ");
                isQuit = false;
            }
        }
    }
}

这部分我把
isQuit=false在最后,它只是停止。我希望它继续。

尝试将Try-catch语句放在while循环中。

请编辑问题,使您的代码格式正确-包括缩进和删除大量无意义的空行。