Sto lavorando su un piccolo programma che condurrà un Sort Sort. Un numero verrà immesso attraverso la tastiera e memorizzato in una variabile che ho chiamato "num". Ho deciso di utilizzare un'istruzione switch per ottenere il numero immesso.
switch( e.getKeyCode() ) {
case KeyEvent.VK_0: num = 0; break;
case KeyEvent.VK_1: num = 1; break;
case KeyEvent.VK_2: num = 2; break;
case KeyEvent.VK_3: num = 3; break;
case KeyEvent.VK_4: num = 4; break;
case KeyEvent.VK_5: num = 5; break;
case KeyEvent.VK_6: num = 6; break;
case KeyEvent.VK_7: num = 7; break;
case KeyEvent.VK_8: num = 8; break;
case KeyEvent.VK_9: num = 9; break;
}
Ho capito che un'altra linea di condotta avrebbe potuto essere l'utilizzo di una serie di istruzioni if.
if( e.getKeyCode() == KeyEvent.VK_0 )
num = 0;
else if( e.getKeyCode() == KeyEvent.VK_1 )
num = 1;
etc. for every number up until 9.
Mi sono quindi chiesto quale sia la differenza essenziale tra un'istruzione switch e una serie di istruzioni if. So che risparmia spazio e tempo per scrivere, ma non è così tanto. Quindi, la mia domanda è, a parte lo spazio, un'istruzione switch diversa da una serie di statizioni se in qualche modo? È più veloce, meno soggetto a errori, ecc.?
Questa domanda non influisce molto sul mio codice. Mi stavo chiedendo. Inoltre, questa domanda riguarda il linguaggio JAVA, non altri linguaggi di programmazione.