使用扫描仪从用户输入中读取整数



在我正在创建的程序中,我正在使用整数变量为用户创建一个菜单,当用户选择一个时,他们将在菜单中激活该选项。我正在尝试使用 readnextInt,但它不起作用,我不确定为什么。扫描仪的代码不起作用。

import java.util.Scanner;

 public class username
      {
    public static void main(String[] args)
{

    {   
       int Floor;
       Floor = 0;
       int Destination;
       Destination = 0;
       int UseLift;
       int AuditReport;
       int ExitLift;
       int a;

       UseLift = 1;
       AuditReport = 2;
       ExitLift = 3;
       a = read.NextInt;

       Scanner b = new Scanner(System.in);
       int a = in.nextInt();
       if (a == 1)
      System.out.println(" Enter your name ");
       else if (a == 2)
    System.out.println("");
       else if(a == 3)
    System.out.println(" Please Exit Lift ");
{

这一行有你的错误。

Scanner b = new Scanner(System.in);
int a = in.nextInt();

您的扫描仪称为 b,而不是 in。请改用b.nextInt()

Scanner b = new Scanner(System.in);
int a = b.nextInt();

此外,您有一个错误的 Read.nextInt(),并且您尚未定义 Read。我不认为那行试图做任何事情,所以只是删除它。

首先,什么是read?我不认为它在任何地方都被定义为Scanner

其次,一旦定义了readScanner read = new Scanner(System.in);),那么就可以调用nextInt(),而不是NextInt。所有方法在尝试调用它们时都需要这些括号。

错误

声明

a = read.NextInt;

似乎是多余的。 变量read未定义。

a = read.NextInt;
Scanner b = new Scanner(System.in);
int a = in.nextInt();

变量in未定义,但用于读取nextInt()

int a = in.nextInt();

它必须指向Scanner类的实例。将其替换为 b

您在同一范围内定义了两次a。因此,您的 IDE 必须在下面显示一条线

int a;
...
...
Scanner b = new Scanner(System.in);
int a = in.nextInt();

最后,不是错误,而是您的代码不遵循变量名和类名的 JAVA 命名约定。有关更多详细信息,请阅读 Java 命名约定

建议更正

  1. 删除a = read.nextInt;,因为它似乎是多余的。
  2. 删除int a;,因为您在Scanner后重新定义它实例。
  3. int a = in.nextInt();更改为int a = b.nextInt();
剩下的代码是正确的,只需将这一行"int a = in.nextInt();"更改为"int a = b.nextInt();",因为b是扫描仪的名称,nextInt()

是属于扫描仪类的方法"in.nextInt()"是不正确的。

相关内容

  • 没有找到相关文章

最新更新