【发布时间】:2011-06-13 02:50:11
【问题描述】:
我们可以使用 for 循环和 while 循环来达到同样的目的,这样更快
例如:我想循环一个项目 1000000000 次我应该使用 for 循环还是 while 循环?
这是迭代,那么为什么我们在编程中需要两者都只需要一个?
既然两个循环都是一样的,那为什么我们需要两个呢?
【问题讨论】:
我们可以使用 for 循环和 while 循环来达到同样的目的,这样更快
例如:我想循环一个项目 1000000000 次我应该使用 for 循环还是 while 循环?
这是迭代,那么为什么我们在编程中需要两者都只需要一个?
既然两个循环都是一样的,那为什么我们需要两个呢?
【问题讨论】:
字面意思是一样的。 这两件事的机器语言翻译通常是相同的。
【讨论】:
您的编译器可能比您更聪明,并且会为您优化代码。所以通常你不必担心这些问题。如果您真的想知道,请对不同的方法进行基准测试,测量您感兴趣的参数并根据基准测试的结果做出决定。
祝你好运!
【讨论】:
这两个循环大致等价。
您应该只选择更适合您的代码的那个,即使代码更具可读性的那个。
例如,如果您的循环需要一个虚拟变量,那么 for 循环可能更合适。
【讨论】:
两者都足够快,使用更能表达您的意图的东西。 通常,如果“for”循环适用,则更可取,因为它表达了更特殊的含义(迭代容器或范围),因此信息量更大。
如果您真的担心性能,请使用循环展开(多次重复循环主体并减少迭代次数)或其他优化技术。对于现代优化的编译器来说,在语言结构之间进行选择几乎不重要。
【讨论】: