我讀了一些代碼,一些算法,那麼它有這樣的循環,我不明白,這對於循環在java中做什麼?
for (v = destination; v != source; v = parent[v])
{
u = parent[v];
residualGraph[u][v] -= pathFlow;
residualGraph[v][u] += pathFlow;
}
從正常的循環,我已經看到了(抱歉noob問題的不同),但是當我用下面的代碼測試代碼,它給了我ArrayIndexOutOfBoundsException異常
int[] arr = {1, 2, 3, 4, 5, 6, 7, 8};
for (int v = 8; v != 1; v = arr[v])
{
System.out.println(v);
}
有人可以解釋成爲怎樣的for循環嗎?
由於在數組中從1開始,所以您正在獲取數組超出範圍的異常。從0開始,以7結尾,並且它將被編譯。 – Compass 2014-10-06 15:54:57
http://docs.oracle.com/javase/tutorial/java/nutsandbolts/for.html – 2014-10-06 15:55:16
那麼你關心哪個循環?後面的一個被認爲是中斷的,因爲它開始於'v [8]',但是v的索引只從'0..7' – Alnitak 2014-10-06 15:55:26