我一直在編寫一個用於數組內部重複的java代碼。 下面是代碼:在函數內部使用參數變量
private int[] id;
public void union(int p, int q)
{
int pid = id[p];
int qid = id[q];
for(int i=0; i<id.length; i++)
if(id[i]==pid)id[i]=qid;
}
但我的導遊說,有我用id[i]==id[p]
代替id[i]==pid
它將給我一個錯誤。並繼續稱它爲一個「陰險的bug」。但我沒有看到它的問題。它應該給出與我調用該函數時相同的結果,它應該將我提到的值作爲參數,並且應該沒有問題。
有人對此有所瞭解嗎?
OKAY。但我擔心的是,即使p和q小於我的數組長度,也會使用'id [i] == id [p]'給我一個錯誤? –
不,它不會。至少我看不到它,哈! – Coderchu