【发布时间】:2011-12-09 19:31:00
【问题描述】:
下面的if语句可以转换成case语句吗?
if (Number >= 5) and (Number <= 10) then
lblAnswer.Caption := 'in range'
else
lblAnswer.Caption := 'out of range';
我的回答:
可以的
case (number >= 5) and (Number <= 10) of
lblAnswer.Caption := 'in range';
lblAnswer.Caption := 'out of range';
end;
这是正确的吗?
【问题讨论】:
-
你为什么要这样做?对于这样的表达式,
if ... then只是更清晰、更快捷的方式。没有兴趣在这里使用case。 -
另一种说法:if (number in [5..10]) then .. else ..
-
InRange() 用于限制不是恒定或超出设定范围的情况。
标签: delphi syntax if-statement case-statement