2013-08-04 8 views
9

Ho cercato in javadoc ma non sono riuscito a trovare informazioni relative a questo.Interruzione dell'esecuzione di ulteriore codice in java

Desidero che l'applicazione interrompa l'esecuzione di un metodo se un codice in tale metodo indica di farlo.

Se quella frase era confusa, ecco cosa voglio fare in codice:

public void onClick(){ 

    if(condition == true){ 
    stopMethod(); //madeup code 
} 
    string.setText("This string should not change if condition = true"); 
} 

Quindi, se la "condizione" booleana è vero, il metodo "onClick" deve fermare l'esecuzione di ulteriore codice.

Questo è solo un esempio. Ci sono altri modi per me di fare ciò che sto cercando di realizzare nella mia applicazione, ma se ciò fosse possibile, sarebbe sicuramente di aiuto.

+1

'condizione = true' è un'espressione di assegnazione. Fai attenzione alla distinzione. –

+1

'(condizione = true)' è ** sempre ** 'vero'. – Maroun

+0

questo è solo un esempio. scusa per l'errore di battitura. aggiustato. –

risposta

26

Basta fare:

public void onClick() { 
    if(condition == true) { 
     return; 
    } 
    string.setText("This string should not change if condition = true"); 
} 

E 'superfluo scrivere if(condition == true), basta scrivere if(condition) (In questo modo, per esempio, sarete non scrivere = per errore).

2

Si può semplicemente utilizzare return per terminare l'esecuzione del metodo di

1

O return; dal metodo anticipato o throw un'eccezione.

Non c'è altro modo per impedire che un ulteriore codice venga eseguito prima di uscire completamente dal processo.

5

Ci sono due modi per fermare corrente metodo/processo:

  1. gettando eccezione.
  2. restituisce il valore anche se è un metodo vuoto.

Opzione: puoi anche interrompere il thread corrente per interromperlo.

Ad esempio:

public void onClick(){ 

    if(condition == true){ 
     return; 
     <or> 
     throw new YourException(); 
    } 
    string.setText("This string should not change if condition = true"); 
} 
18

return di uscire dell'esecuzione del metodo, break di uscire di un'esecuzione ciclo e continue per saltare il resto del ciclo corrente. Nel tuo caso, solo return, ma se ci si trova in un ciclo for, per esempio, fare break per fermare il loop o continue per passare alla fase successiva del ciclo

+0

Molto informativo. –

2

Per interrompere l'esecuzione di codice Java basta usare questo comando:

System.exit(1); 

Dopo questo comando java si ferma immediatamente!

ad esempio:

int i = 5; 
    if (i == 5) { 
     System.out.println("All is fine...java programm executes without problem"); 
    } else { 
     System.out.println("ERROR occured :::: java programm has stopped!!!"); 
     System.exit(1); 
    } 
+0

'Sistema.exit() 'interromperà l'intero server (testato su Tomcat) o l'applicazione. –

Problemi correlati