case X of // X为一个有序变量或结果为有序值的表达式比如i+j等
值1:语句1 // 如果X等于值1,执行语句1(可以为复合语句,下同)
值2:语句2 // 如果X等于值2,执行语句2
.....
值n:语句n // 如果X等于值n,执行语句n
else
语句n+1 //如果上面都没有符合的,执行语句n+1
end;
完整的格式:
case selectorExpression of
caseList1: statement1;
...
caseListn: statementn;
else
statements;
end
例子:
case I of
1..5: Caption := 'Low';
6..9: Caption := 'High';
0, 10..99: Caption := 'Out of range';
else
Caption := '';
end;
这个例子相当于
if I in [1..5] then
Caption := 'Low'
else if I in [6..10] then
Caption := 'High'
else if (I = 0) or (I in [10..99]) then
Caption := 'Out of range'
else
Caption := '';