【发布时间】:2013-03-20 16:55:41
【问题描述】:
有人可以用最简单的术语解释一下,就像你在和一个白痴说话(因为你是),这段代码实际上在说/在做什么
for (int i = 0; i < 8; i++)
【问题讨论】:
-
SO上有聊天:chat.stackoverflow.com
有人可以用最简单的术语解释一下,就像你在和一个白痴说话(因为你是),这段代码实际上在说/在做什么
for (int i = 0; i < 8; i++)
【问题讨论】:
这是一个循环,它说,好吧,每当i 小于 8 时,我都会执行代码块中的任何操作。每当i 达到 8 时,我就会停下来。循环每次迭代后,将i加1(i++),这样循环最终会在满足i < 8(i变为8,所以不再小于)条件时停止。
例如,这个:
for (int i = 0; i < 8; i++)
{
Console.WriteLine(i);
}
将输出:01234567
看看代码是如何被执行了 8 次的?
就数组而言,当您不知道数组的大小但又想对其中的每一项进行操作时,这会很有帮助。你可以这样做:
免责声明:以下代码会因语言而异,但原理保持不变
Array yourArray;
for (int i = 0; i < yourArray.Count; i++)
{
Console.WriteLine(yourArray[i]);
}
这里的区别在于执行次数完全取决于数组的大小,所以它是动态的。
【讨论】:
for
(int i = 0; i
这是一个for 循环,它将根据括号内的条件多次执行下一条语句。
for (int i = 0; i
首先设置i = 0
for (int i = 0;i ;i++)
i < 8 时继续循环。
for (int i = 0; i i++)
每次循环,将i 增加 1。
例如;
for (int i = 0; i < 8; i++)
do(i);
会依次调用do(0)、do(1)、...do(7),当i达到8时停止(即i < 8为假)
【讨论】:
循环的通用视图是
for (initialization; condition; increment-decrement){}
第一部分初始化代码。第二部分是条件,只要它为真,就会继续运行循环。最后一部分是循环每次迭代后将运行的内容。最后一部分通常用于递增或递减计数器,但不是必须的。
【讨论】:
for(<first part>; <second part>; <third part>)
{
DoStuff();
}
此代码的评估方式如下:
所以对于你的例子:
for (int i = 0; i < 8; i++)
{
DoStuff();
}
所以循环运行一次,将 i 设置为从 0 到 7 的每个值。注意 i 递增到 8,但随后循环立即结束;它不会在 i 设置为 8 时运行。
【讨论】:
和下一个想法一样:
“从i = 0开始,当i小于8,括号末尾的i加一,做括号内的说明”
同理:
while( i < 8 )
{
// instrucctions like:
Console.WriteLine(i);
i++;
}
For 语句是编码的基础,它对它的理解非常有用。
这是重复 n 次相同指令或浏览(或对每个元素执行某些操作)数组的方式
【讨论】:
for (int i = 0; i < 8; i++) {
//code
}
简单来说
int i = 0;
if (i < 8) //code
i = i + 1; //i = 1
if (i < 8) //code
i = i + 1; //i = 2
if (i < 8) //code
i = i + 1; //i = 3
if (i < 8) //code
i = i + 1; //i = 4
if (i < 8) //code
i = i + 1; //i = 5
if (i < 8) //code
i = i + 1; //i = 6
if (i < 8) //code
i = i + 1; //i = 7
if (i < 8) //code
i = i + 1; //i = 8
if (i < 8) //code - this if won't pass
【讨论】: