用于(x:y)执行的Java

Ran*_*and 14 java string loops for-loop

我有以下for循环:

for(String s : someString.split("\\s+")){
   //do something
}
Run Code Online (Sandbox Code Playgroud)

每次循环迭代时java都执行split()方法,还是只执行一次并保持临时数组迭代?

RMT*_*RMT 19

它只执行一次,并使用该数组并通过它进行交互.

编辑:来自Mat这是参考

  • 确切地说,[JLS增强的`for`语句](http://java.sun.com/docs/books/jls/third_edition/html/statements.html#14.14.2)doc中详细说明了 (6认同)