【问题标题】:I got an unexpected token in while loops [closed]我在while循环中得到了一个意外的令牌[关闭]
【发布时间】:2020-11-01 05:10:00
【问题描述】:

由于某种原因,程序声称 while(n == true) 是一个意外令牌

boolean n = true;
while(n == true){
    if(autopark.searchItems(searchInput) == 1){
        System.out.println("There is a matching item available in our inventory\n" + "Enter a string to search: ");
    }
    if(autopark.searchItems(searchInput) == 2){
        System.out.println("No such item is available in our inventory.\n" + "Enter a string to search: ");
    }
    if(autopark.searchItems(searchInput) == 0){
        n = false;
    }
}

【问题讨论】:

  • 你能分享确切的错误吗? while 的此代码 100% 有效
  • 改用while(true)
  • @dmpokuaev 请分享确切的错误
  • 当我将鼠标悬停在红色波浪线上时,它会显示“意外令牌”
  • 请不要破坏您自己的帖子。当您在此处发布时,即表示您授予 SO 在 CC-by SA 4.0 下分发内容的权利。任何破坏行为都将被撤销。

标签: java while-loop syntax compiler-errors


【解决方案1】:

您已将代码直接放入类中。这不是代码所在。

在“顶层”(例如,在源文件的开头),您可以编写的唯一内容(除了 cmets,它们总是可以的)是 import 语句、package 语句,和类型声明。比如class X {}@interface Y{}甚至enum Foo{}

在类型声明中,各种事情都是合法的,这取决于我们要知道的类型声明。对于基本类,类中唯一合法的构造是类型声明(您可以将类型放入类型中)、方法构造函数初始化器字段声明

你不能将代码直接放在你的类中。

boolean n = true; 是有效的,因为它是一个字段声明。但是while 不是这些东西。

试试这个:

public class MyFirstJava {
    public static void main(String[] args) throws Exception {
        new MyFirstJava().go();
    }

    public void go() throws Exception {
        // start writing code here.
    }
}

【讨论】:

    猜你喜欢
    • 2017-07-12
    • 2019-09-19
    • 1970-01-01
    • 2015-11-22
    • 1970-01-01
    • 2019-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多