为什么我的程序不能运行java中的循环?

0 java loops for-loop

我的问题在于我希望它能够打印列出的所有四个城市,但它只打印多伦多.

public class Test
{
  public static void main(String[] args)
  {
    String[] allowed = new String[] {"New York", "Singapore", "Paris", "Toronto"};

    int index;
    for(index=0; index < allowed.length - 1; index++);
    {
      System.out.println(allowed[index]);
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

如果我在allowed.length之后没有" - 1"运行它,我会得到一个越界错误.我尝试将它转换为while循环,但仍然没有运气.关于我的循环,我错过了什么?

Ell*_*sch 5

分号终止你的循环体; 然后你有一个匿名块.删除分号.你的测试应该是这样的,

for (int index=0; index < allowed.length; index++) // ;
Run Code Online (Sandbox Code Playgroud)

除非你index以后再需要.此外,您还可以打印一个没有循环使用的数组Arrays.toString(Object[])

System.out.println(Arrays.toString(allowed));
Run Code Online (Sandbox Code Playgroud)