【问题标题】:cant find my main error, debugging at java [duplicate]找不到我的主要错误,在 java 中调试 [重复]
【发布时间】:2021-04-26 01:38:20
【问题描述】:

所以我在 java 中运行一个程序,但我真的找不到主要错误 这是我的代码:

public class Main

{
    public static void main(String[] args) {
        double myCheck = 50.00;
        double yourCheck = 19.95;
        double fiinalRATE = 0.15;
        System.out.println("Tips are");
        calcTip(myCheck);
        calcTip(yourCheck);
        public void calcTip(double bill);
        {
        tip = bill * fiinalRATE;
        System.out.println("The tip should be at least " + tip);
    }
}

这是我得到的错误,我认为它是标题,但我真的不知道该放什么我在 java 方面有点新

【问题讨论】:

  • 您需要在主方法旁边的类级别上定义您的方法 calcTip,而不是在其中。

标签: java debugging


【解决方案1】:

你不能在另一个方法中声明一个方法。所以编译器变得疯狂:) 只需将 calcTip() 函数移到 main() 函数之外(在 main() 的大括号之后或 main() 声明之前)。

public class Main
{
    public static void main(String[] args) {
        double myCheck = 50.00;
        double yourCheck = 19.95;
        double fiinalRATE = 0.15;
        System.out.println("Tips are");
        calcTip(myCheck);
        calcTip(yourCheck);
    }

    public static void calcTip(double bill) {
        // fiinalRate must be declared as parameter of calcTip()
        // or as static field in Main class,
        // otherwise the code doesn't compile.
        double tip = bill * fiinalRATE;
        System.out.println("The tip should be at least " + tip);
    }
}

【讨论】:

  • 这不会编译,因为fiinalRATEcalcTip 内部是未知的
  • @f1sh 你是对的,还有 Gal Fudim 建议为 caclTip() 使用“静态”关键字的版本。我会编辑
【解决方案2】:

你不能在函数中声明函数。您必须将函数从 main() 拉出到 Main.class

【讨论】:

    猜你喜欢
    • 2016-02-28
    • 1970-01-01
    • 2015-04-20
    • 2013-06-25
    • 2016-12-17
    • 2014-03-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多