請幫助我,我需要知道如何結束這個循環三次。但是,如果你知道,請告訴我,我一直在日夜工作。並且可以將代碼與大家(星球大戰)Java hangman end loop
System.out.println("If you want to leave, type \"quit\"");
System.out.println("If you want to play again,type\"yes\" ");
Scanner input = new Scanner(System.in);
String s=input.next();
if(s.equals("quit")) {
System.out.println("Thanks for playing the game!");
System.exit(0);
}
if (s.equals("yes")) {
String userInput = input.nextLine();
userInput = userInput.toUpperCase();
startGame();
下面是完整的代碼:
import static Hello.Hangman.startGame;
import java.util.Scanner;
import java.util.Arrays;
public class Hangman {
public static void main(String[] args) {
Hangman game = new Hangman();
Hangman.startGame();
}
public static void startGame() {
Scanner Input = new Scanner(System.in);
String first, reverse = "";
String second, reverse2 = "";
Scanner in = new Scanner(System.in);
System.out.println("Welcome to Hangman!");
System.out.println("Enter your first name.");
first = in.nextLine();
System.out.println("Enter your last name to play.");
second = in.nextLine();
int length = first.length();
int length2 = second.length();
for (int i = length - 1; i >= 0; i--)
reverse = reverse + first.charAt(i);
reverse = reverse.substring(0, 1).toUpperCase()++ reverse.substring(1).toLowerCase();
for (int i = length2 - 1; i >= 0; i--)
reverse2 = reverse2 + second.charAt(i);
reverse2 = reverse2.substring(0, 1).toUpperCase() + reverse2.substring(1).toLowerCase();
System.out.println("Your name entered in reverse is: " + reverse + " " + reverse2);
System.out.println("Press enter to continue:");
in.nextLine();
String[] CollectionOfWords =
{"", "world", "about", "again", "heart", "pizza",
"earth", "stars", "light", "music", "party",
"seven", "three", "happy", "water", "amber",
"apple", "piano", "green", "mouth", "suger",
"stone", "japan", "china", "after", "smile",
"south", "house", "stake", "guess", "wrong",
"thing", "write", "white", "black", "lemon",
"anime", "stick", "outer", "input", "grand",
"lives", "twice", "print", "hangs", "woman",
"power", "today", "india", "night", "candy",
"puppy", "latin", "vegan", "phone", "april",
"forum", "birth", "other", "chris", "irish",
"paste", "queen", "grace", "crazy", "plant",
"knife", "spike", "darth", "vader", "eagle",
"egypt", "range", "fists", "fight", "glory",
"March", "smart", "magic", "codes", "rolls",
"match", "honor", "glass", "board", "teams",
"bully", "zebra", "under", "mango", "brain",
"dirty", "eight", "zeros", "train", "cycle",
"break", "necks", "terms", "slide", "large"};
int randNumber = (int) Math.ceil(Math.random() * CollectionOfWords.length);
int counter = 5;
String radmWord = CollectionOfWords[randNumber];
char[] genRadmLetter = radmWord.toCharArray();
char[] genRadmLetter2 = radmWord.toCharArray();
for (int x = 0; x < genRadmLetter.length; x++) {
genRadmLetter[x] = '-';
}
System.out.println(String.valueOf(genRadmLetter));
System.out.println("Hello" + " " + reverse + " " + reverse2 + " " + "guess a letter");
char guessedLetter = Input.next().charAt(0);
int RW = radmWord.indexOf(guessedLetter);
if (RW >= 0) {
genRadmLetter[RW] = guessedLetter;
System.out.println(genRadmLetter);
}
if (RW == -1) {
System.out.println("Wrong letter, try again.");
counter = counter - 1;
System.out.println("Lives left: " + counter);
}
while (counter != 0) {
System.out.println("Guess a letter.");
guessedLetter = Input.next().charAt(0);
RW = radmWord.indexOf(guessedLetter);
if (RW >= 0) {
genRadmLetter[RW] = guessedLetter;
System.out.println(genRadmLetter);
}
if (RW == -1) {
System.out.println("Wrong letter, try again.");
counter = counter - 1;
System.out.println("Lives left: " + counter);
}
boolean result = Arrays.equals(genRadmLetter, genRadmLetter2);
if (result == true) {
return;
}
for (int i = 0; i < genRadmLetter.length; i++) {
if (radmWord.charAt(i) == guessedLetter) {
genRadmLetter[i] = guessedLetter;
result = true;
}
}
if (counter == 0) {
break;
}
}
if (counter == 0) {
System.out.println("You lost. The word was: " + radmWord);
playAgain();
if (RW == 0)
System.out.println("Well done, you have guessed the word.");
System.out.println("Your final score is: " + counter);
}
}
public static boolean playAgain() {
while (true) {
System.out.println("If you want to leave, type \"quit\"");
System.out.println("If you want to play again,type\"yes\" ");
Scanner input = new Scanner(System.in);
String s = input.next();
if (s.equals("quit")) {
System.out.println("Thanks for playing the game!");
System.exit(0);
}
if (s.equals("yes")) {
String userInput = input.nextLine();
userInput = userInput.toUpperCase();
startGame();
} else {
}
}
}
}
*我需要知道如何結束這個循環三次*意味着?你想執行它3次? – Ravi
是的,請幫助 –
縮進非常重要它使我們能夠看到防止許多錯誤的代碼段的實際範圍。使用您的編輯器提供的工具並正確縮進您的代碼。 – Pshemo