2015-12-03 35 views
1

爲什麼這for停止當key[i] == null,我真的不明白它,我會感謝你幫助我解決這個問題!對於獲得散列表的方法

public Val get(Key key) { 
    int i; 
    for (i = hash(key); keys[i] != null; i = (i+1) % M) 
     if (keys[i].equals(key)) break; 
    return vals[i]; 
} 

回答

1

在開始考慮for (A; B; C)A運行一次,那麼如果Btrue它執行一次循環,然後再次執行C和檢查B。只要Bfalse,循環終止。

在你的情況下,如果key[i] == null然後Bfalse,這就是爲什麼for循環停止。