For Loop中这一行发生了什么?

时间:2017-05-19 09:11:16

标签: vb.net for-loop

代码:

Dim answer As Integer
Dim startNumber As Integer

answer = 0

For startNumber = 1 To 4
    answer = answer + startNumber
Next startNumber

MessageBox.Show(answer)

有人可以解释说answer = answer + startNumber的行吗?

我不明白是answer = answer?为什么不只是Answer + Startnumber我已经将变量answer赋值为0.我明白它做了什么只是我能做的那一点语法低下头。

3 个答案:

答案 0 :(得分:1)

您正在进行for循环。 answer被分配answerstartNumber(循环1为1,循环2为2,等等)。让我们分解循环:

循环1(目前答案是0):

answer = 0 + 1

答案现在是1

循环2:

answer = 1 + 2

答案现在是3

循环3:

answer = 3 + 3

答案现在是6

循环4:

answer = 4 + 6

答案现在是10

答案 1 :(得分:1)

  

有人可以解释说answer = answer + startNumber的行吗?

answer = answer + startNumber行将answer加上startNumber的值分配回answer。另一种方法是answer += startNumber

如果您执行了answer + startNumber,那么您将不会保留之前的answer值。相反,您只需在每个循环上用startNumber覆盖。

请考虑以下代码:

For startNumber = 1 To 4
    answer = startNumber
    Debug.WriteLine("answer = " & answer.ToString())
Next startNumber

输出:

answer = 1
answer = 2
answer = 3
answer = 4

请注意answer如何不保留以前的值。相反,您所做的只是设置answer,其值为startNumber。现在让我们试试你的代码:

For startNumber = 1 To 4
    answer = answer + startNumber
    Debug.WriteLine("answer = " & answer.ToString())
Next startNumber

输出:

answer = 1
answer = 3
answer = 6
answer = 10

请注意answer在向startNumber添加driver.find_element_by_link_text("Toon telefoonnummer").click(). 之前如何保留该号码。

由于您是新手,我强烈建议您学习如何调试代码和分析变量。

答案 2 :(得分:0)

这不属于For循环本身。这是在循环的每次迭代中执行的操作。循环的要点是允许你多次做同样的事情。

那个东西可以是任何东西,在这个例子中,他们只选择那个作为虚拟动作。它并没有真正做你通常认为有用的事情。它正是您的想法,即它将answer的值添加到startNumber的值,并将结果存储在answer中。这意味着answer的值从0开始,然后通过连续迭代变为1,3,6和10。

如果您自己编写For循环,则需要在循环中放置一些对您有用的内容。例如,如果要输出10x表,则将循环计数器乘以10并输出结果。