【发布时间】:2014-11-21 17:34:05
【问题描述】:
我正在制作一个基于文本的角斗士格斗游戏。我遇到的问题是当我尝试调用它时它不会进入另一个类。这就是我所拥有的。
主类
if (fill.equals("1")) {
arena = true;
while (arena == true) {
System.out.println("You travel to the arena.");
fill = scan.next();
System.out.println("Vanguard: Welcome!");
System.out.println("1) Enter the arena.");
System.out.println("2) Exit the arena.");
fill = scan.next();
if (fill.equals("1")) {
System.out.println("Vanguard: These are the available matches:");
if (rank == "Rookie") {
System.out.println("1) Snow");
System.out.println("2) Blaze");
System.out.println("3) Ember");
fill = scan.next();
if (fill.equals("1")) {
System.out.println("You with to battle Snow? Y/N");
fill = scan.next();
fill = fill.toLowerCase();
if (fill.equals("y")) {
enemy = "Snow";
enemyhealth = 35;
enemydamage = enemydamrn.nextInt((7 - 5) + 1) + 5;
System.out.println("You go to the arena to prepare with snow.");
Battle Battle = new Battle();
}
}
}
}
}
}
当我在扫描仪中输入“y”时,它只会在 while 语句处重新启动,而不是去上课。
如果我能得到任何帮助,我将不胜感激。我对 java 很陌生,我已经用它编码了大约 1.5 个月,我希望能够找出这个问题。我希望你们中的任何人都可以帮助我! ^_^/
【问题讨论】:
-
你在哪里设置
arena = false?这似乎是退出 while 循环的合乎逻辑的方式。 -
你希望
Battle Battle = new Battle()做什么? -
有趣的是你会使用
fill.equals("1")但rank == "Rookie" -
仅仅创建一个类的实例并不会产生您可能正在寻找的任何功能。该实例本质上是一个从该类中获取功能的指针。你必须使用那个指针。
标签: java eclipse class while-loop