In programmazione lo switch, chiamato a volte anche switch-case, è una struttura di controllo che permette la verifica del valore di un'espressione.
Si tratta di un'istruzione usata in gran parte dei linguaggi di programmazione, il cui ruolo consiste nel distinguere più casi corrispondenti ad altrettanti valori di un'espressione. Risulta utile quando si devono controllare tanti valori per una singola variabile, contesto dove spesso è molto efficiente, anche se questa affermazione dipende molto dal linguaggio, e quindi anche dalla implementazione usata.