Preciso de uma ajuda nesse código, o resultado da variável opcao1 não esta executando dentro do while, só a variável opcao2 que esta sendo executada pelo while, podem me ajudar?
Scanner sc = new Scanner(System.in);
List <String> list= new ArrayList<>();
System.out.print("Jogador 1 - Digite o seu nome: ");
String primeiro_nome = sc.nextLine();
System.out.print("Jogador 2 - Digite o seu nome: ");
String segundo_nome = sc.nextLine();
Jogadores jogadores = new Jogadores(primeiro_nome, segundo_nome);
System.out.print(primeiro_nome + ", você escolhe 'pedra', 'papel' ou 'tesoura'? ");
String opcao1 = sc.nextLine();
list.add(opcao1);
System.out.print(segundo_nome + ", você escolhe 'pedra', 'papel' ou 'tesoura'? ");
String opcao2 = sc.nextLine();
list.add(opcao2);
for(String obj : list) {
String opcao_antigo = "";
while (!obj.equalsIgnoreCase("pedra") & !obj.equalsIgnoreCase("papel")
& !obj.equalsIgnoreCase("tesoura")) {
System.out.println("Favor escrever 'pedra', 'papel' ou 'tesoura'!");
obj = sc.nextLine();
}
while (obj.equalsIgnoreCase(opcao_antigo)) {
System.out.println("O Jogador 1 ja escolheu " + obj.toUpperCase() + ".
Escolha outra opção!");
obj = sc.nextLine();
while (!obj.equalsIgnoreCase("pedra") & !obj.equalsIgnoreCase("papel")
& !obj.equalsIgnoreCase("tesoura")) {
System.out.println("Favor escrever 'pedra', 'papel' ou 'tesoura'!");
obj = sc.nextLine();
}
}
opcao_antigo = obj;
}


