问题标签 [do-while]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
9615 浏览

php - do-while 是 php 中最快的循环吗?

我用一些简单的东西分析了 forwhiledo-while循环:

通过比较循环前后的 microtime()。

do-while 循环在很大程度上是最快的循环。do-while实际上比while快了将近一半。我知道它们用于不同的目的(while在循环执行之前检查条件并且do-while至少执行一次)。

我知道普遍的共识是,while 循环不受欢迎,而 do-while 则更是如此。

我的问题是为什么?考虑到 PHP 应用程序中使用了多少个 for 循环,不应该更多地使用do-while吗?即使使用if语句在循环执行之前检查条件,性能提升也是相当可观的。

我目前接受的答案是代码易读性是嫌疑犯。

10 年编辑: 10 年前,我在一次工作面试中被问到这个问题。我带着错误的看法进入面试,即不赞成 while 循环。我从我以前的工作中学到了这一点,根据我上级的指示,代码中不允许使用 while 循环。

面试与管理层进行得很顺利,然后我被交给了首席程序员,他问我 PHP 中最快的循环是什么,我弄错了,我没有得到这份工作,这就是为什么我问关于 SO 的问题.

10年的经验教会了我很多。

  1. while 循环很好(认为我不是被教过的,这很可笑)
  2. 微优化是真正的邪恶(配置文件代码,专注于瓶颈)
  3. 10 年来,我从未为速度重写过循环。然而,我重写了循环内的逻辑,这始终是真正的瓶颈。
  4. 在编程领域有很多强烈但基本上不正确的观点。坚持到底,阅读、实验和提问,向更好的程序员学习敞开心扉,不要害怕犯错。
0 投票
4 回答
5581 浏览

java - 如何只运行 2 次 do-while 循环?

如何修改下面的代码成为只能输入2次错误PIN的用户?2 次错误 PIN 后,程序将自动退出。

0 投票
3 回答
19080 浏览

loops - 鉴于缺少 do-while 语句,如何使用 Groovy 遍历 inputStream 中的所有字节?

鉴于 Groovy 没有 do-while 语句,我如何遍历输入流中的所有字节?

根据Groovy 用户指南的先前版本

还没有'do ... while()' 语法。

由于模棱两可,我们尚未向 Groovy 添加对 do .. while 的支持

在 Groovy 中执行以下 Java 代码的最佳方法是什么?

(我知道我可以使用布尔值来做到这一点,我只是想知道是否有“Groovy”的方式来做到这一点)

0 投票
3 回答
900 浏览

java - Java do loop - 无法解析字符串

使用 Java 中程序员定义的方法开发一个简单的掷骰子游戏。因为我知道程序至少需要运行一次然后询问玩家是否想再去一次,所以我选择使用 do/while 循环。我以前从未使用过,但我相信我设置它是正确的。

我的代码如下,不包括循环中包含的 main 方法的主体,以及程序员定义的方法。

此时我从 Eclipse IDE 得到的是“无法解决进程”。

关于发生了什么的任何想法?

0 投票
1 回答
84 浏览

c# - 这个循环代码有什么问题

这是问题所在:

常量:'a'、'b'、'c'、'd';

我有很多变量,但只有这些是相互关联的:'x'、'y'、'z';

对于第一次迭代 1 有:

如果为真,则程序计算其他元素(从这一点我知道工作),但如果条件为假,我们有这样的事情:

同样,如果为假:

以此类推,直到满足条件。

我要解决的是从最后一次迭代中提取的循环(i)'xi'和'yi'的值以在以后的开发中使用。除非满足条件,否则我无法提取它们。

谢谢你。

0 投票
5 回答
339 浏览

java - 无法将数据存储到 ArrayLists 中?

感谢所有帮助人员,但现在问题的性质已经改变,使用 Patrick 的建议,下面的循环正在运行,但它似乎没有将输入存储到相应的数组中,数据不断替换到 ArrayLists 中,而不是进入下一个位置ArrayList 有什么建议吗?

0 投票
2 回答
1300 浏览

java - 如何将此 Do While 循环转换为另一种循环,即 while 循环?

这是整个方法,我唯一要解决的就是这个。

它必须多次接受输入,因此每次都需要输入来确定会发生什么,这就是我喜欢 Do While 循环的原因,但由于它每次至少初始化一次,所以我得到了比需要的额外滚动。

我试图这样做,以及这种方式的各种变体:

这不起作用,因为它不会再次要求输入。如果我尝试输入 input.nextline(); 进入while循环,它说“eitherOr”没有初始化,即使我在输入输入时初始化它,命令行保持空白,所以它对我的输入没有任何作用。

0 投票
1 回答
473 浏览

javascript - Javascript / JQuery 随机图像重复问题

我有一个图片库,它从文件夹 images/flip_images/ 中提取随机图像。文件名称为数字,然后是 .jpg,例如 0.jpg、1.jpg 等。有 14 张图像可供选择,标记为 0 - 13。因为只有 14 张图像,页面一次需要 4 张,有很多重复,我想避免。我正在使用 Javascript 生成随机图像文件名并将变量传递给 JQuery .flip() 命令。

我尝试在下面的代码中使用 do while 循环来更改全局变量,将全局变量与其他变量进行比较,如果它首先选择的数字已经在使用中,则选择另一个数字。但是,我似乎无法让它发挥作用。这是范围问题还是我只是在代码中犯了一个简单的错误?这是代码:

0 投票
1 回答
389 浏览

c - C do-while 循环

我正在尝试使用 do..while 循环编写一个程序:列出从 100 开始的所有可被 7 和 5 整除但不能被 11 整除的数字。
你能帮帮我吗?

0 投票
4 回答
552 浏览

c++ - 我认为 do while 正在进入无限循环。或数组。(运行时错误)

它是指向对象的数组的基本程序。

编译器说问题出在 "cout<< name <<"\n";"

还有一个警告(这个警告不是问题)

我试图strcpy_s删除警告,但这个词无法识别。