我知道這是一個愚蠢的問題,但它真的讓我煩惱。幫我理解這個指針與價值問題
採取以下:
public <TParseable> LinkedList<TParseable> readAllParseable(
Parseable<TParseable> parseable, boolean close) throws IOException
{
LinkedList<TParseable> list = new LinkedList<TParseable>();
byte[] delim = parseable.getDelimiterValue();
boolean skipNL = parseable.skipNewLines();
while(ready())
{
byte[] data = readTo(delim);
parseable.parse(data);
System.out.println(parseable);
list.add((TParseable)parseable);
}
return list;
}
的println語句,輸出呼叫parseable.parse(data)
後各一次的預期toString()
價值parseable
。但是,返回的列表具有正確數量的元素,但它們都等於循環完成之前可解析的最後一個值。
這是因爲list.add(xxx)參數是通過指針而不是值傳遞的嗎?
這就是我想的,只是想檢查。 – jdc0589 2009-11-20 05:31:45