1

なぜこれが正しく印刷されないのですか?

>         Dim test1 As Decimal? = Nothing
>         Dim test2 As Decimal? = 5D
> 
>         If (test1 <> test2) Then
>             Console.WriteLine("true")
>         End If
4

3 に答える 3

4

C#とは異なり、notequals演算子はこのためには機能しません。代わりに、Nullabe.Equals()

Dim test1 As Decimal? = Nothing
Dim test2 As Decimal? = 5D

If (Nullable.Equals(test1, test2) = False) Then
    Console.WriteLine("not equal")
Else
    Console.WriteLine("equal")
End If
于 2012-09-26T23:19:18.753 に答える
0

値をnull値と比較すると、通常はが返されますFalse

1つは値が不足しているため、値を比較できないため、=<>演算子の両方がを返しFalseます。

于 2012-09-26T23:18:25.123 に答える
0

私はそれを考え出した。私はする必要があります

IF(not test1.Equals(test2))

于 2012-09-26T23:18:29.600 に答える