【问题标题】:goto token usage causes syntax error in java [closed]goto令牌使用导致java中的语法错误[关闭]
【发布时间】:2017-01-04 05:48:45
【问题描述】:

我收到此代码错误:

ERROR: if ((goto == 791) || (!w.equals("Sugar"))) {

错误是:

1. ERROR 1,LINE 190: Syntax error on token "goto", invalid Expression
2. ERROR 2,LINE 231: Type mismatch: cannot convert from World to String
3. ERROR 3,LINE 238: The operator && is undefined for the argument type(s)int,boolean

我该怎么办?

代码:http://pastebin.com/vH4y2gTW 抱歉,无法在此处发布代码,因为格式不显示编号的行..

【问题讨论】:

  • goto 是 Java 中的保留关键字。您不能将其用作变量。它用于流量控制。
  • 那我用什么代替呢?
  • 使用未保留的名称?啊,抱歉,我们应该如何知道代码中该变量的合理名称是什么?并备案:请研究help center;例如,在此处提问时了解如何提供minimal reproducible example。而且我们不需要编号的行,只需在给出问题的行中添加注释即可。
  • 你知道你必须先声明变量吗?如前所述:转到帮助中心。我们不认为我们的工作是帮助您一一修复所有错误的语法。

标签: java class packages minecraft bukkit


【解决方案1】:
ERROR 1,LINE 190: Syntax error on token "goto", invalid Expression

你不能调用变量goto,这是Java中的一个保留字。

ERROR 2,LINE 231: Type mismatch: cannot convert from World to String

你有一个包含世界的变量;你想把它变成一个字符串(通过转换,或者在错误的地方传递)。试试

worldObject.toString() 

相反。但是你知道,编程并不是要“阻止编译器抱怨”。这是关于“做正确的事”。因此,也许您可​​以使用该调用来创建该 World 的字符串表示形式;但也许你做错了什么;并且应该完全做其他事情。

ERROR 3,LINE 238: The operator && is undefined for the argument type(s)int,boolean

简单:你做不到

intVar && booleanVar

仅仅因为 && 是 逻辑 AND 运算符;并且仅适用于 两个 布尔参数。在 Java 中,不能将数字用于 AND、OR 等!

真正的答案在这里:这些是绝对的 Java 基础知识。您真的不需要求助于其他人来翻译那些已经清晰、人类可读的编译器错误消息。

我个人的建议是:花一些时间学习这些java基础知识。当您认为需要向我们寻求这些细微之处时,尝试为 Minecraft 编写代码是没有意义的。换句话说:在尝试跑步之前先学会爬行。

【讨论】:

  • 谢谢你!我按照你说的做了,效果很好,谢谢!
  • 感谢您的快速接受。但如前所述:我的主要点是:您最好退后一段时间阅读、学习和练习。否则,你会从一个错误跑到下一个错误;更糟糕的是:即使你的程序会在某个时候开始;他们很可能会崩溃,或者更糟:造成损坏。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-01-12
  • 2014-01-10
  • 2012-08-02
  • 2014-12-03
  • 2013-10-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多