visual significa relacionales que operadores logicos definicion comparacion aritmeticos vb.net if-statement equality

significa - VB.Net: prueba valores mĂșltiples para la igualdad?



operadores relacionales en visual basic (3)

No hay forma de encadenarlos así. Necesita dividirlo en comparaciones emparejadas conectadas por AndAlso

if val1 = val2 AndAlso val2 = val3 AndAlso val1 = val3 Then

¿Cómo se prueban múltiples valores para la igualdad en una línea? Básicamente quiero hacer

if (val1 == val2 == val3 == ... valN)

pero en VB.Net.


If val1 = valN AndAlso val2 = valN AndAlso ... Then End If

Esto puede ser engorroso cuando se prueban más de unos pocos valores.


Si tiene muchos valores para probar y hacer esto muy a menudo, puede escribirle un ayudante como este:

Public Function AllTheSame(ByVal ParamArray values() As Object) As Boolean For index As Integer = 1 To values.Length - 1 If values(0) <> values(index) Then Return False Next Return True End Function <Fact()> Public Sub testAllTheSame() Assert.True(AllTheSame("Test")) Assert.True(AllTheSame("Test", "Test")) Assert.True(AllTheSame("Test", "Test", "Test")) Assert.True(AllTheSame(1234)) Assert.True(AllTheSame(1234, 1234, 1234)) Assert.False(AllTheSame("Test", "Test2")) Assert.False(AllTheSame("Test", "Test", "Test3")) Assert.False(AllTheSame(1234, 1234, 987)) End Sub