对于Java中的循环

Naj*_*qib 0 java foreach for-loop

我正在为最后几对夫妇编程,但今天我看到了一个新的东西,我在网上搜索但找不到完美的答案.有一个代码说

for(String string : mCha) // line 1
{
// loop working
}
Run Code Online (Sandbox Code Playgroud)

我想问一下1号线是什么意思?正如我所研究的那样,for循环中应该有3个参数,如果我们不想给出,那么应该遵循以下方法

for(;;)
{
}
Run Code Online (Sandbox Code Playgroud)

请解释我,因为我对这个语法完全陌生,我在网上搜索但找不到任何有用的东西.

Arn*_*lle 8

for(String string : mCha) // line 1
{
  // loop working
}
Run Code Online (Sandbox Code Playgroud)

是一个简写:

for (Iterator<String> i = mCha.iterator(); i.hasNext(); ) {
  String string = (String)i.next();
  //loop working
}
Run Code Online (Sandbox Code Playgroud)

(假设mCha实现Iterable,数组的处理方式不同,请参阅有关enchanced for语句的JLS)

示例:

for(String string : mCha) // line 1
{
  System.out.ptinln(string) // For each element of my collection, display it.
}
Run Code Online (Sandbox Code Playgroud)

  • ...假设`mCha`不是`String []` (2认同)