标记“void”上的语法错误,预期记录

问题描述 投票:0回答:1

我真的不知道如何解决这个问题,一切都是正确的,只是这个错误。我与该文件有什么关系吗?我是一名初学者程序员,所以这让我很困惑

package conversiontable;

import java.util.Scanner;

public static void main(String[] args) {

    if (length == 0) {
        System.out.println("Number of miles?: ");
        return;
    }


    String exitMessage = "Thank you for using the Conversion Table program. Goodbye!";
    int miles;


    // Check if the argument is 'exit' to end the program
    if (args[0].equalsIgnoreCase("exit")) {
        System.out.println(exitMessage);
        return;
    } else {
        try {
            miles = Integer.parseInt(args[0]);
        } catch (NumberFormatException e) {
            System.out.println("Please provide a valid number of miles or type 'exit' to end the program.");
            return;
        }
    }


    // Display the table header
    System.out.println("Miles\tKilometers\tYards\tFeet\tInches");
    System.out.println("-------------------------------------------------------");


    // Generate the conversion table
    for (int i = 1; i <= miles; i++) {
        double kilometers = i * 1.60934;
        int yards = i * 1760;
        int feet = i * 5280;
        int inches = i * 63360;


        // Display the conversion values
        System.out.println(i + "\t" + kilometers + "\t\t" + yards + "\t" + feet + "\t" + inches);
    }


    System.out.println("Would you like to perform another conversion? (Type 'exit' to end)");
}
}


我尝试移动导入代码并使用声明,但没有运气

java eclipse eclipse-rcp declaration void
1个回答
0
投票

您不能只将方法放入文件中。 Java 代码由类型组成,类型包含方法。

其:

class YourClassName {
  public static void main(String[] args) {
    // code here
  }
}

你忘记了

class YourClassName
部分。


关于 JDK21 的说明

在 JDK21 中,如果您正在编写一个简单的单文件 Java 应用程序,则可以省略

class YourClassName
部分。不过,这是预览功能。这意味着您需要在命令行上将
--enable-preview
传递给
java
才能完成此操作,并且许多工具(例如您正在使用的工具,否则您会收到不同的错误!)不支持此功能然而。我建议大家在学习java的时候不要尝试使用预览功能。如果您坚持,您需要将您正在使用的所有内容更新到最新版本。此版本的任何向您抛出错误的内容都不能用于此 JDK21 功能。

© www.soinside.com 2019 - 2024. All rights reserved.