Questions tagged «loops»

循环是编程中的一种控制流结构,其中一系列语句可以重复执行,直到满足某些条件为止。




21
应该尝试…在循环内还是循环外捕捉?
我有一个看起来像这样的循环: for (int i = 0; i < max; i++) { String myString = ...; float myNum = Float.parseFloat(myString); myFloats[i] = myNum; } 这是方法的主要内容,其唯一目的是返回浮点数数组。我希望此方法null在出现错误时返回,因此我将循环放在一个try...catch块中,如下所示: try { for (int i = 0; i < max; i++) { String myString = ...; float myNum = Float.parseFloat(myString); myFloats[i] = myNum; } } catch …

11
空检查在增强的for循环中
在Java中的for循环中防止空值的最佳方法是什么? 这看起来很丑: if (someList != null) { for (Object object : someList) { // do whatever } } 要么 if (someList == null) { return; // Or throw ex } for (Object object : someList) { // do whatever } 可能没有其他办法。他们是否应该将其放入for构造本身中,如果为null,则不要运行循环?
171 java  syntax  loops  for-loop 

14
foreach与someList.ForEach(){}
显然,有很多方法可以迭代集合。好奇是否存在任何差异,或者为什么要使用一种方法来替代另一种方法。 第一类: List<string> someList = <some way to init> foreach(string s in someList) { <process the string> } 另一种方式: List<string> someList = <some way to init> someList.ForEach(delegate(string s) { <process the string> }); 我想想起来,您将可以指定一个可重用的委托,而不是上面使用的匿名委托...
167 c#  .net  generics  loops  enumeration 



6
PHP Foreach通过参考传递:最后一个元素重复吗?(臭虫?)
我刚编写的简单php脚本有一些非常奇怪的行为。我将其减少到重新创建该错误所需的最低限度: <?php $arr = array("foo", "bar", "baz"); foreach ($arr as &$item) { /* do nothing by reference */ } print_r($arr); foreach ($arr as $item) { /* do nothing by value */ } print_r($arr); // $arr has changed....why? ?> 输出: Array ( [0] => foo [1] => bar [2] => baz …
159 php  arrays  loops  reference 

13
在循环中声明变量是否有开销?(C ++)
我只是想知道如果您执行以下操作是否会降低速度或效率: int i = 0; while(i < 100) { int var = 4; i++; } 声明int var一百次。在我看来,好像会有,但我不确定。这样做会更实用/更快吗? int i = 0; int var; while(i < 100) { var = 4; i++; } 还是在速度和效率上都一样?

7
返回会停止循环吗?
假设我有一个像这样的循环: for (var i = 0; i < SomeArrayOfObject.length; i++) { if (SomeArray[i].SomeValue === SomeCondition) { var SomeVar = SomeArray[i].SomeProperty; return SomeVar; } } 快速问题:return停止循环本身及其执行吗?
156 javascript  loops  return 

30
盘旋成螺旋状
一个朋友需要一种算法,该算法可以让他遍历NxM矩阵的元素(N和M为奇数)。我想出了一个解决方案,但我想看看我的SO同事是否可以想出更好的解决方案。 我将我的解决方案发布为该问题的答案。 示例输出: 对于3x3矩阵,输出应为: (0,0)(1,0)(1,1)(0,1)(-1,1)(-1,0)(-1,-1)(0,-1)(1,-1 ) 此外,该算法应支持非平方矩阵,因此对于5x3矩阵,输出应为: (0,0)(1,0)(1,1)(0,1)(-1,1)(-1,0)(-1,-1)(0,-1)(1,-1 )(2,-1)(2,0)(2,1)(-2,1)(-2,0)(-2,-1)

8
优化了“ while(1);” 在C ++ 0x中
更新,请参见下文! 我听说过,C ++ 0x允许编译器为以下代码段打印“ Hello” #include <iostream> int main() { while(1) ; std::cout << "Hello" << std::endl; } 显然,它与线程和优化功能有关。在我看来,这会让很多人感到惊讶。 有人对为什么要允许这样做有很好的解释吗?作为参考,最新的C ++ 0x草案在6.5/5 在for语句的情况下,在for-init-statement之外的循环, 不调用库I / O函数,并且 不访问或修改易失性对象,并且 不执行任何同步操作(1.10)或原子操作(第29条) 实现可能会假定它终止。[注意:这旨在允许编译器进行转换,例如删除空循环,即使无法证明终止也是如此。—尾注] 编辑: 这篇有见地的文章谈到了该标准文本 不幸的是,没有使用“未定义行为”一词。但是,只要该标准说“编译器可以假定P”,就意味着具有not-P属性的程序具有未定义的语义。 这是正确的,并且允许编译器为上述程序打印“ Bye”吗? 这里有一个更具洞察力的线程,它与对C的类似更改有关,由Guy在上面的链接文章中开始。在其他有用的事实中,他们提出了一种似乎也适用于C ++ 0x的解决方案(更新:在n3225上将不再起作用-参见下文!) endless: goto endless; 看来,不允许编译器对其进行优化,因为这不是循环,而是跳转。另一个人总结了C ++ 0x和C201X的拟议更改 通过编写一个循环,程序员断言或者环路不可见的东西的行为(执行I / O,访问volatile对象,或进行同步或原子操作), 或者,它最终会终止。如果我通过写一个没有副作用的无限循环违反了这一假设,那我就是对编译器撒谎,而我的程序的行为是不确定的。(如果幸运的话,编译器可能会警告我。)该语言不提供(不再提供?)一种表达无可见行为的无限循环的方法。 在2011年3月31日更新了n3225:委员会将文本移至1.10 / 24并说 …

4
Twig for循环用于带键的数组
我使用Twig,并且有一个带有如下键的数组: array[1] = "alpha" array[2] = "bravo" array[3] = "charlie" array[8] = "delta" array[9] = "echo" 我想在循环中获取键(1,2,3,8,9)和内容(alpha, bravo, charlie, delta, echo)以获取此数组的所有值。 我该如何解决这个问题?
152 php  arrays  loops  twig 

3
如何在JSP中循环遍历HashMap?
如何HashMap在JSP中遍历? <% HashMap<String, String> countries = MainUtils.getCountries(l); %> <select name="country"> <% // Here I need to loop through countries. %> </select>
146 java  jsp  loops  hashmap 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.