# 旧的写法比较好

Posted by Arthur on August 21, 1999 at 13:36:05:

In Reply to: Re: 多个If有无较简单之写法？ posted by j on August 21, 1999 at 02:31:04:

: : 若有多个条件要判断如：
: : If A=True then
: : If B=False then
: : If C >10 then
: : If D=True then
: : Do Something
: : End If
: : End If
: : End If
: : End If
: : 请问有无较简单之写法？

: 利用 And 逻辑运算子

: If ( A = True And B = False) And ( C > 10 And D = True ) Then
: Do Something
: End If

虽然 j 的程式比较精简, But 如果是我不会考虑这种写法!

因为如果 A=False 时, 其他判断条件会检查吗?
j 的写法会(所以浪费时间), 新手的写法反而比较有效率.

如果我判断 Var1 不是 Null, 而且是 "A" 开头的字串
写法一:
if not IsNull(var1) Then
if Left(Var1,1)="A" Then
Do Something
End if
End if

写法二:
if (not IsNull(var1)) And (Left(Var1,1)="A") Then
Do Something
End if

在写法二中, 如果 Var1= Null 会导致错误.
错误原因是 Left(Var1,1)
但写法一就可以避免, 所以我会浪费一点 Code, 除非我确定不会导致错误发生.

Follow Ups:

- 谢谢！我也没想到[如果 A=False 时, 其他判断条件会检查吗?] 新手 18:39:02 8/21/99 (0)