Задача
Я тестирую следующий простой код VB.Net:
For i = 0 To 5
Dim f As Integer
If i = 3 Then
f = 1
End If
Debug.WriteLine(f)
Next
и вывод выглядит следующим образом:
0
0
0
1
1
1
но я ожидал:
0
0
0
1
0
0
Решение
Простой способ решить эту проблему - заменить Dim f As Integer
на Dim f As Integer = 0
Вопрос
Это ожидаемое поведение и если да, то почему?