if 后面的else 到底有没有必要 ( 积分: 10 )

  • 主题发起人 主题发起人 翁富大
  • 开始时间 开始时间

翁富大

Unregistered / Unconfirmed
GUEST, unregistred user!
例如下段程序,
if Sender.AsString = '0' then Text := '运行'
else
if Sender.AsString = '1' then Text := '退出'
else
if Sender.AsString = '2' then Text := '备用'
else
if Sender.AsString = '3' then Text := '报废'
else
if Sender.AsString = '4' then Text := '投信号';
我觉得改成
if Sender.AsString = '0' then Text := '运行';
if Sender.AsString = '1' then Text := '退出';
if Sender.AsString = '2' then Text := '备用';
if Sender.AsString = '3' then Text := '报废';
if Sender.AsString = '4' then Text := '投信号';
更加精炼,不知道加上else有没有必要,能提高效率么?如果不能的话我觉得还是去掉比较好。各位大侠有什么意见,望指教。
 
例如下段程序,
if Sender.AsString = '0' then Text := '运行'
else
if Sender.AsString = '1' then Text := '退出'
else
if Sender.AsString = '2' then Text := '备用'
else
if Sender.AsString = '3' then Text := '报废'
else
if Sender.AsString = '4' then Text := '投信号';
我觉得改成
if Sender.AsString = '0' then Text := '运行';
if Sender.AsString = '1' then Text := '退出';
if Sender.AsString = '2' then Text := '备用';
if Sender.AsString = '3' then Text := '报废';
if Sender.AsString = '4' then Text := '投信号';
更加精炼,不知道加上else有没有必要,能提高效率么?如果不能的话我觉得还是去掉比较好。各位大侠有什么意见,望指教。
 
好象没有必要
 
case sender.asinteger of
1:
2:
end;
不可以吗
 
没有必要吧
 
那else在什么时候有用呢,如果没用的话那else岂不是一直都是多余的了么
 
加上else效率要高
 
if ... then
else if ... then
else if ... then

上面整个是一句话来的,也就是说其中的一个条件成立,
下面的else if就不会做比较


if ... then ;
if ... then ;
这是两条语句来的

可以向ZBJ2001_KF说的那样用Case语句
Case语句里也就是一条语句
这样清楚了吧
 
哦,原来如此,我想通了,多谢多谢
 
后退
顶部