Come far fare qualcosa al mio programma quando compare un errore invece di bloccarsi?

1

Fondamentalmente sto scrivendo un gioco in Java dove voglio che il programma dica all'utente che non può spostarsi a destra o a sinistra se quella mossa farà spostare il giocatore fuori dall'array, il che significa che:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -1
at Game.printmap(Game.java:58)
at Game.main(Game.java:17)

L'array è la mappa in cui il personaggio può muoversi e voglio evitarlo di uscire da esso. È il mondo di gioco in cui il giocatore può muoversi all'interno.

C'è un modo per far sì che il mio programma chieda di nuovo l'input se la scelta del giocatore implica un errore OutOfBounds?

Grazie

    
posta Filipe Madureira 14.01.2015 - 00:13
fonte

1 risposta

3

Bene, il modo migliore per risolvere questo problema è correggere l'errore che ha generato l'eccezione in primo luogo.

Detto questo, puoi sempre scrivere un blocco try catch di livello superiore. Questo catturerà tutte le eccezioni che non sono state gestite altrove.

public static void main(String args[])
{
    while (userDidNotExit)
    {
        try
        {
            // execute entry point of program here.
        }
        catch (Exception e)
        {
            // perform some sort of recovery here.
            // 
        }
    }
}
    
risposta data 14.01.2015 - 00:30
fonte

Leggi altre domande sui tag