Delphi面向对象的编程方法(三)

2008-02-23 07:17:18来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

2.1.4 跳转语句 

Object Pascal的跳转语句有ifcase两个。 

2.1.4.1 if语句 

if语句会计算一个表达式,并根据计算结果决定程序流程。在上文的例程中,根据ColorDialog.Execute的返回值,决定窗体的背景颜色。if保留字后跟随一个生成BooleanTrueFalse的表达式。一般用“=”作为关系运算符,比较产生一个布尔型值。当表达式为True时,执行then后的语句。否则执行else后的代码,if语句也可以不含else部分,表达式为False时自动跳到下一行程序。

if语句可以嵌套,当使用复合语句表达时,复合语句前后需加上beginendelse保留字前不能加“;”,而且,编译器会将else语句视为属于最靠近的if语句。必要时,须使用beginend保留字来强迫else部分属于某一级的if语句。 

2.1.4.2 case语句 

case语句适用于被判断的变量或属性是整形、字符型、枚举型或子界型时(LongInt除外)。用case语句进行逻辑跳转比编写复杂的if语句容易阅读,而且程序代码整形较快。

下面的例程显示一个使用case语句的窗体:

建立如下的事件处理过程: 

procedure TForm1.Button1Click(Sender: TObject);

var

Number : Integer;

begin

Number := StrToInt(Edit1.Text);

case Number of

1,3,5,7,9: Label2.Caption := '奇数';

0,2,4,6,8: Label2.Caption := '偶数';

10..100:

begin

Label2.Caption := '10100之间';

Form1.Color := clBlue;

end;

else

Label2.Caption := '大于100或为负数';

end;

end; 

执行程序,当Edit1部件接受到一个值,并按动“OK”按钮触发程序后,Number便被赋值为用户输入的数值。case语句根据Number的值判断该执行哪一条语句。象if语句一样。case语句也有可选择的else部分。case语句以end结尾。 

2.1.5 循环语句 

Object Pascal的循环语句有三种:repeatwhilefor语句。 

2.1.5.1 repeat语句 

repeat语句会重复执行一行或一段语句直到某一状态为真。语句以repeat开始,以until结束,其后跟随被判断的布尔表达式。参阅以下的例程: 

i := 0;

repeat

i := i 1;

Writen(i);

until i=10; 

当此语句被执行时,窗体的下方会出现110的数字。布尔表达式 i=10 (注意,与其他语言不同的是,“=”是关系运算符,而不能进行赋值操作)直到repeat..until程序段的结尾才会被计算,这意味着repeat语句至少会被执行一次。 

2.1.5.2 while语句 

while语句和repeat语句的不同之处是,它的布尔表达式在循环的开头进行判断。

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Delphi面向对象的编程方法(四)

下一篇:Delphi面向对象的编程方法(二)