Visual Basic 2012:我想要类似布尔值的东西,但有三种可能的答案



Visual Basic 2012:我想要一个布尔值之类的东西,但有三种可能的答案?是否已经有这样的东西,或者你能做出这样的东西吗?

使用Enum

Public Enum Choices
  One
  Two
  Three
End Enum

就像DonA的答案一样,我建议Enum,但是...我强烈建议使用 -101

Public Enum State
    FirstState = -1
    SecondState = 0
    ThirdState = 1
End Enum

现在你不只是使用三个值,但更好的是,你基本上使用了三个符号。 正、零和负。

真的没有必要生成新的枚举...可以使用三态枚举。

举个例子:

Private Shadows Sub Load() Handles MyBase.Load
    MsgBox(func(100)) ' Result = -2
End Sub
Public Function func(ByVal number As Integer) As TriState
    Select Case number
        Case Is < 100
            Return TriState.False
        Case Is > 100
            Return TriState.True
        Case Else ' Equals to 100
            Return TriState.UseDefault
    End Select
End Function

最新更新