O fluxo de um aplicativo pode ser controlado condicionalmente com declarações if e else:
if (a == 5) {
writeln("Condition is met");
} else if (a > 10) {
writeln("Another condition is met");
} else {
writeln("Nothing is met!");
}
Quando um bloco if ou else contém apenas uma instrução,
as chaves podem ser omitidas.
O D fornece os mesmos operadores que o C, C++ e o Java para testar variáveis quanto à equivalência ou compará-las:
== e != para testar a equivalência ou diferença
<, <=, > e >= para testar se são menores (ou iguais) e maiores (ou iguais)
Para combinar várias condições, o operador || representa
o operador lógico OR, e && o operador lógico AND.
D também define uma instrução switch..case que executa um caso
dependendo do valor de uma variável. switch
funciona com todos os tipos básicos e também com strings!
É possível até mesmo definir intervalos para tipos integrais
usando a sintaxe case START: ... case END:. Não deixe de
dar uma olhada no exemplo do código-fonte.
switch and case in Programming in D