Problemas com organização do código

Será que alguém poderia me ajudar com a organização do código e a criação de um comando de “JOGAR NOVAMENTE” um cara me ajudou com outro código mas aquele estava dando errado ,será que não poderia me ajudar novamente?

import java.util.Random;
import java.util.Scanner;
 
  public class JogoForcaJava {
  
      public static void main(String[] args) {
           
         Random aleatorio = new Random();
         Scanner sc = new Scanner(System.in);
     
          String palavra, adivinhar, converterTracoMatriz;
         char checar;
         int aleatorios = 0, vidas = 0;
         boolean enforcado = false;
         boolean acerto = false;
  
          String[] alfabetoMatriz = {" A ", " B ", " C ", " D ", " E ", " F ", " G ", " H ", " I ", " J ", " K ", " L ", " M ",
                                    " N ", " 0 ", " P ", " Q ", " R ", " S ", " T ", " U ", " V ", " W ", " X ", " Y ", " Z "};
          
          String[] vetoresPalavra = {"teste"};
  
          char[] vetorTraco;
  
          aleatorios =	aleatorio.nextInt(vetoresPalavra.length);
          palavra = vetoresPalavra[aleatorios];
          
          vetorTraco = new char[palavra.length()];   
          
          System.out.println("------------------: JOGO DA FORCA INSTRUÇÕES :------------------");
          System.out.println(" Você pode inserir uma letra ou tentar adivinhar a palavra a qualquer momento. ");
          System.out.println("2. Você tem seis chances antes de ser enforcado.");
          System.out.println("3. Se você tentar adivinhar a palavra, mas a suposição está errada, o programa lerá apenas a primeira letra. ");
          System.out.println("4. Se você adivinhar a palavra corretamente, você ganha.");  
          for(int a=0; a<vetorTraco.length; a++)
          {
        	  vetorTraco[a] = '-';
              System.out.print(vetorTraco[a]);           
          }
          
         System.out.print("\t" + palavra.length() + " letras!");
          
          while(enforcado == false)
          {        
              System.out.println();
              
              System.out.print("Insira uma letra: ");
              adivinhar = sc.nextLine();
              checar = adivinhar.charAt(0);
  
              for(int b=0; b<vetorTraco.length; b++)
              {                
                  if(checar == palavra.charAt(b))                    
                  {                    
                	  alfabetoMatriz[(int) Character.toUpperCase(checar) - 65] = " ";
                      
                	  vetorTraco[b] = adivinhar.charAt(0);
                      
                	  acerto = true;
                 }
                 
                 else
                 {
                	 alfabetoMatriz[(int) Character.toUpperCase(checar) - 65] = " ";
                 }
 
                     System.out.print(vetorTraco[b]);   
             }  
             
             if(acerto == false)
             {
                 vidas++;
             }
             
             acerto = false;
             
             converterTracoMatriz = new String(vetorTraco);
             
             if(palavra.equals(adivinhar) || converterTracoMatriz.equals(palavra))  
                 {
                     System.out.println("\tPalavra Correta, você venceu!");
                    
                     enforcado = true;
                     
                     break;
                 }
 
             System.out.println();   
             
             if(vidas == 0)
             {
                 System.out.println("\t\t\t\t\t _____");
                 System.out.println("\t\t\t\t\t |   |");
                 System.out.println("\t\t\t\t\t     |");
                 System.out.println("\t\t\t\t\t     |");
                 System.out.println("\t\t\t\t\t     |");
                 System.out.println("\t\t\t\t\t_____|");
             }
             
             else if(vidas == 1)  
             {
                 System.out.println("\t\t\t\t\t _____");
                 System.out.println("\t\t\t\t\t |   |");
                 System.out.println("\t\t\t\t\t 0   |");
                 System.out.println("\t\t\t\t\t     |");
                 System.out.println("\t\t\t\t\t     |");
                 System.out.println("\t\t\t\t\t_____|");
                 enforcado = false;
             }
             
             else if(vidas == 2)
             {
                 System.out.println("\t\t\t\t\t _____");
                 System.out.println("\t\t\t\t\t |   |");
                 System.out.println("\t\t\t\t\t 0   |");
                 System.out.println("\t\t\t\t\t |   |");
                 System.out.println("\t\t\t\t\t     |");
                 System.out.println("\t\t\t\t\t_____|");
                 enforcado = false;                
             }
            
             else if(vidas == 3)
             {
                 System.out.println("\t\t\t\t\t _____");
                 System.out.println("\t\t\t\t\t |   |");
                 System.out.println("\t\t\t\t\t 0   |");
                 System.out.println("\t\t\t\t\t/|   |");
                 System.out.println("\t\t\t\t\t     |");
                 System.out.println("\t\t\t\t\t_____|");
                 enforcado = false;                
             }
             
             else if(vidas == 4)
             {                
                 System.out.println("\t\t\t\t\t _____");
                 System.out.println("\t\t\t\t\t |   |");
                 System.out.println("\t\t\t\t\t 0   |");
                 System.out.println("\t\t\t\t\t/|\\  |");
                 System.out.println("\t\t\t\t\t     |");
                 System.out.println("\t\t\t\t\t_____|");
                 enforcado = false; 
                 
             }
             
             else if(vidas == 5)
             {
                 System.out.println("\t\t\t\t\t _____");
                 System.out.println("\t\t\t\t\t |   |");
                 System.out.println("\t\t\t\t\t 0   |");
                 System.out.println("\t\t\t\t\t/|\\  |");
                 System.out.println("\t\t\t\t\t/    |");
                 System.out.println("\t\t\t\t\t_____|");
                 enforcado = false;                 
             }
                          else if(vidas == 6)
             {
                 System.out.println("\t\t\t\t\t _____");
                 System.out.println("\t\t\t\t\t |   |");
                 System.out.println("\t\t\t\t\t 0   |");
                 System.out.println("\t\t\t\t\t/|\\  |");
                 System.out.println("\t\t\t\t\t/ \\  |");
                 System.out.println("\t\t\t\t\t_____|");
                 System.out.println("\tDesculpe mas você perdeu, a palavra correta era: " + palavra);
                 enforcado = true;                    
             }
             
             System.out.println();
             }
         }  
>      }