Witam. Zaczynam zabawę z Javą. Napisałem grę, która działa lecz przez dużą ilość if'ów kod jest bardzo mało czytelny. Próbuję zamienić ify na metody, ale nie bardzo wiem jak. Czy jest mi w stanie ktoś podpowiedzieć?
Kod:
import java.util.Random;
import java.util.Scanner;
public class SPSgame {
public static void main(String[] args) {
String[] arr = new String[]{"KAMIEŃ", "PAPIER", "NOŻYCE"};
Random rnd = new Random();
Scanner scanner = new Scanner(System.in);
String playerChoice;
int i = 0;
int j = 0;
System.out.println("*** KAMIEŃ PAPIER NOŻYCE ***");
while (i < 5 && j < 5) {
String randomChoice = arr[rnd.nextInt(arr.length)];
System.out.print("Wybierz; k - KAMIEŃ, p - PAPIER, n - NOŻYCE: ");
playerChoice = scanner.nextLine();
if (playerChoice.equals("k")) {
playerChoice = "KAMIEŃ";
if (randomChoice == "KAMIEŃ") {
System.out.println(playerChoice + " VS " + randomChoice);
System.out.println("REMIS");
System.out.println(i + " : " + j);
} else if (randomChoice == "PAPIER") {
System.out.println(playerChoice + " VS " + randomChoice);
System.out.println(i + " : " + (++j));
} else if (randomChoice == "NOŻYCE") {
System.out.println(playerChoice + " VS " + randomChoice);
System.out.println((++i) + " : " + j);
} else {
System.out.println("Wpisz poprawny symbol(k/p/n): ");
}
} else if (playerChoice.equals("p")) {
playerChoice = "PAPIER";
if (randomChoice == "PAPIER") {
System.out.println(playerChoice + " VS " + randomChoice);
System.out.println("REMIS");
System.out.println(i + " : " + j);
} else if (randomChoice == "NOŻYCE") {
System.out.println(playerChoice + " VS " + randomChoice);
System.out.println(i + " : " + (++j));
} else if (randomChoice == "KAMIEŃ") {
System.out.println(playerChoice + " VS " + randomChoice);
System.out.println((++i) + " : " + j);
}
} else if (playerChoice.equals("n")) {
playerChoice = "NOŻYCE";
if (randomChoice == "NOŻYCE") {
System.out.println(playerChoice + " VS " + randomChoice);
System.out.println("REMIS");
System.out.println(i + " : " + j);
} else if (randomChoice == "KAMIEŃ") {
System.out.println(playerChoice + " VS " + randomChoice);
System.out.println(i + " : " + (++j));
} else if (randomChoice == "PAPIER") {
System.out.println(playerChoice + " VS " + randomChoice);
System.out.println((++i) + " : " + j);
}
}
}
if (i == 5) {
System.out.println();
System.out.println("Gratulacje! Wygrałeś :)");
} else if (j == 5) {
System.out.println();
System.out.println("Przykro mi, przegrałeś.");
}
}
}