【问题标题】:Errors when trying to use import java.util.Scanner尝试使用 import java.util.Scanner 时出错
【发布时间】:2018-04-27 19:21:30
【问题描述】:

我是编码新手,我正在学习在线课程 (MOOC)。我正在阅读有关阅读用户输入的部分,并将代码从网站复制粘贴到 Netbeans 中,但我遇到了诸如非法表达式开头而不是语句之类的错误。这是我的代码:

public class JavaApplication2 {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {

        import java.util.Scanner;
        public class ProgramName {
            public static void main(String[] args) {
                Scanner reader = new Scanner(System.in);
                // code here
            }
        }
    }
}

我得到了 import 和 public class 行的非法表达式开头。我还收到导入行的非语句错误。最后,我得到了 public static void 行的非法静态声明。

任何帮助将不胜感激。谢谢!

【问题讨论】:

  • 导入应该位于类声明之外(阅读,导入在公共类之前)
  • 看起来你最后多了一个括号。此外,您只需要一个类和一种方法来测试您的代码,例如:import java.util.Scanner; public class ProgramName { public static void main(String[] args) { Scanner reader = new Scanner(System.in); // code here }
  • 为什么类内有方法内有方法?
  • 因为我不知道自己在做什么

标签: java netbeans


【解决方案1】:

导入在这里:

import java.util.Scanner;

public class JavaApplication2 {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        Scanner reader = new Scanner(System.in);
        // code here

    }
}

它不是类的属性,而是编译器需要能够判断“扫描器”(在此上下文中)指的是什么的引用。在这种情况下,它声明 Scanner 是在 java.util 中定义的,它是 Java 运行时环境 (JRE) 的一部分。

此外,当您继续编码时,您应该将文件组织到文件夹中。 一旦你这样做了,你必须在文件的第一行添加这种类型的行:package folderName.folderName0。 如果您想使用另一个类中的一个类,则必须添加一个导入,例如:import folderName.folderName0.JavaApplication2

【讨论】:

    【解决方案2】:

    您已将整个 java 源文件放入 main 函数中。只需这样做:

    import java.util.Scanner;
    
    public class JavaApplication2 {
        public static void main(String[] args) {
            Scanner reader = new Scanner(System.in);
        }
    }
    

    【讨论】:

      【解决方案3】:

      您不能将 import 和 package 语句放在类中。它们应该在类定义之前完成。

      试试这个代码:-

          import java.util.Scanner;
      
          // import before class definition.
      
          public class JavaApplication2 {
      
          /**
           * @param args the command line arguments
           */
          public static void main(String[] args) {
      
      
              public class ProgramName {
                  public static void main(String[] args) {
                       Scanner reader = new Scanner(System.in);
      
                  // code here
              }
          }
      
      }
      }
      

      【讨论】:

        【解决方案4】:

        在页面标题中输入:import java.util.Scanner;

        【讨论】:

          【解决方案5】:

          您缺少重要的导入:import java.util.Scanner;

          例子:

          import java.util.Scanner;
          public class JavaApplication2 {
          
              /**
               * @param args the command line arguments
               */
              public static void main(String[] args) {
          
                  import java.util.Scanner;
                  public class ProgramName {
                      public static void main(String[] args) {
                          Scanner reader = new Scanner(System.in);
                          // code here
                      }
                  }
              }
          }
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2015-05-13
            • 1970-01-01
            • 2017-07-18
            • 2017-02-08
            • 2018-12-02
            • 2020-09-07
            • 2021-09-14
            • 2019-04-09
            相关资源
            最近更新 更多