【发布时间】:2011-04-15 22:25:20
【问题描述】:
有没有办法在 VB.net 中使用 Select Case 语句作为开头?还是我必须使用很长的 elseif?示例:
If text.StartsWith("/go") then
elseif test.StartsWith("/stop")
elseif test.StartsWith("/continue")
End If
但取而代之的是:
Select Case text
Case text.StartsWith("/go")
Case text.StartsWith("/stop")
Case text.StartsWith("/continue")
Case Else
End Select
End Sub
【问题讨论】:
-
字符串中这个命令之后是什么?例如,如果它是一个空间,您可以获取该空间的所有内容,并在选择中使用。
-
"或者我必须使用长的 elseif" 与 case 相比,elseif 的长处是什么?又多了一个性格。好的,您需要 Then 在条件末尾,但 VS 会为您添加,因此您无需额外输入。
-
Case True 答案可能有效,但对我来说似乎是代码异味。它实现了什么?
-
我认为它更容易阅读。
-
我倾向于同意它更容易阅读。
Select Case向我暗示,您正在检查一件事以检查多个互斥状态。这似乎使它适合这里;您要检查的一件事是单词的开头。 (虽然如果你能get字符串的开头就不会那么有问题了,所以你可以按照凡人所期望的方式对其进行测试。)
标签: vb.net select-case