所以..我正在努力学习更多的Java,并决定创建一个简单的头/尾硬币翻转,但似乎无法让它工作。使用“令牌上的语法错误”,“else”,“{”,但在行尾我已经有{。任何人都可以向我解释这个吗?或者我做错了什么?感谢
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!");
}
}
}
答案 0 :(得分:2)
您错过了if statement
if (flip == 1) {
System.out.println("Heads");
}
答案 1 :(得分:2)
这一行:
if (flip == 1)
应更改为:
if (flip == 1){
那应该解决它!
答案 2 :(得分:2)
正如其他答案所示,您错过了if
声明的开场大括号。我只想补充一些其他的建议。
考虑通过缩进方法中的代码部分来正确格式化代码。这样做会使一切更具可读性(并帮助您找到这样的错误!)。某些IDE(如Eclipse)可以为您自动格式化代码。
为什么不让flip
成为boolean
? true
为头,false
为尾。对于此变量,boolean
是更合适的类型。如果您进行了更改,则可以使用Random
的{{1}}方法代替nextInt
。
如果您进行了第二个项目符号中提到的更改,则可以将if
重写为
if (flip) {
System.out.println("Heads");
} else {
System.out.println("You win! Congratulations!");
}
我认为更清楚。