Kurz erklärt
Die grundlegende Kontrollstruktur für Verzweigungen: Ist eine Bedingung wahr, wird ein Codeblock ausgeführt, sonst (else) ein anderer.
Genauer
Der else-Zweig ist optional — ein reines if-Statement ohne else führt seinen Block nur bei erfüllter Bedingung aus und macht sonst einfach mit dem restlichen Code weiter. Mehrere Bedingungen lassen sich über else...if-Ketten verknüpfen; bei vielen möglichen festen Werten ist ein Switch-Statement oft lesbarer.