什么意思';' 在声明里面?

Val*_*lva 2 java syntax insertion-sort

我正在尝试理解以下代码:

/**
   * Simple insertion sort.
   * @param a an array of Comparable items.
   */
  public static void insertionSort( Comparable [ ] a )
  {
      for( int p = 1; p < a.length; p++ )
      {
          Comparable tmp = a[ p ];
          int j = p;
          for( ; j > 0 && tmp.compareTo( a[j-1] ) < 0; j-- )
              a[ j ] = a[ j - 1 ];
          a[ j ] = tmp;
      }
  }
Run Code Online (Sandbox Code Playgroud)

但我不确定是什么意思,for( ; ) 所以我需要你的帮助.对不起,如果它是重复的,但我在这里和谷歌搜索,但到目前为止没有.

小智 7

for循环的第一部分是在循环开始之前发生的事情.通常它用于分配变量.

";" 没有任何东西(除了括号)之前它只是说"在循环开始之前我什么都不想做".不需要分配变量等.