大括号内【 xxxx 】,是简答题答题方式
共同点就是,【这两个语句都是判断语句,并且都可以执行多条件判断】,If语句本意是2条件判断但通过ElseIf可以达成多条件判断,Select Case本身就是多条件判断。
差异点:
1、【If层次更强】可以多层次判断,但也造成每组IF都要准确的写出EndIf,比较容易乱
【Select Case只有一层】依次对比各个条件,看起来比较简洁
2、【If是判断整个表达式】第一次判断如果xxx则xxx,第二次还是如果xxx则xxx
【Select Case是判断条件】第一次就知道,我要判断xxx,按Case先后顺序依次找条件,执行第一个符合的条件之后直接跳出Select
3、通过第二点,还可以看出一个问题(其实我也不知道这么说准确与否,但..... 简答题嘛,写多了也不算错,对吧???)【If对逻辑思维能力要求低一些,Select Case对逻辑思维能力高些】If因为可以用表达式,所以只要尽量减少层次那编写逻辑其实很简单,Select Case由于只是判断条件,所以逻辑上会比较绕。我举个例子:
A<=1则B=A;1=10则B=A*3
你用If可以依葫芦画瓢就能写出来,但是用Select Case
第二句你要写Case Is >1且<10是不太好写的,(如果你写Case Is >1<10:B=A*2,在判断条件>10的时候,你会发现结果是错的)可以先判断<1的,第二句写>10的,第三句写其他的,那么你要是4个条件、5个条件呢?要有很强的逻辑性掌握Case Is的顺序
4、【If判断时间比Select Case判断时间长】这一点我也不知道对不对,但理论上是个区别,可用起来其实运行速度差不多 .....
都是开关语句 可以根据不同的条件选择不同分支执行不同的代码
但是 if 这个 条件很宽泛 可以使用范围 特定的值等等各种条件
而select case 则比较单一 只能用特定的值做为条件
if
else
end if // 判断语句 一把用来判断条件 如果符合 就执行 不符合 就执行 eles 语句。
select case 是用单一条件做为分类, 这个适用于2个以上的条件。