Java 投币代码错误/问题
所以。。我试图学习更多Java,并决定创建一个简单的正面/反面硬币翻转,但似乎无法使其工作。用“Syntax error on token”else“{expected”在“else”上给出错误,但在这行的末尾,我已经有了一个{。有人能给我解释一下吗?或者我做错了什么?谢谢Java 投币代码错误/问题,java,Java,所以。。我试图学习更多Java,并决定创建一个简单的正面/反面硬币翻转,但似乎无法使其工作。用“Syntax error on token”else“{expected”在“else”上给出错误,但在这行的末尾,我已经有了一个{。有人能给我解释一下吗?或者我做错了什么?谢谢 import java.util.Random; class CoinFlip { static int flip; public static void main(String[] args) {
import java.util.Random;
class CoinFlip {
static int flip;
public static void main(String[] args) {
coin();
}
static void coin() {
Random rand = new Random();
flip = rand.nextInt(2);
System.out.println("You flipped a " + flip);
heads(flip);
}
static void heads(int flip) {
if (flip == 1)
System.out.println("Heads");
}
else if (flip == 2) {
System.out.println("You win! Congratulations!");
}
}
}
对于
if语句
if (flip == 1) {
System.out.println("Heads");
}
这一行:
if(翻转==1)
应改为:
if(flip==1){
这应该可以解决问题!因为其他答案表明您在
if
-语句中遗漏了一个大括号。我将添加一些其他建议
- 考虑通过缩进方法中的代码部分来正确格式化代码。这样做将使所有内容更具可读性(并帮助您找到类似这样的错误!)。某些IDE(如Eclipse)可以为您自动格式化代码
- 为什么不将
设为flip
?将boolean
设为head,将true
设为tail。false
是此变量更合适的类型。如果进行了更改,可以使用boolean
的方法,而不是Random
nextInt
If
重写为
if (flip) {
System.out.println("Heads");
} else {
System.out.println("You win! Congratulations!");
}
我的观点更清楚。我还建议始终使用
{}
。即使是在if
、else
和之后允许有一个语句,因为
谢谢大家,非常感谢帮助!@user1949982没问题,很乐意帮助。