我的**裡大致邏輯是這樣的
public static void main(string args)
system.out.println(list);
}
輸出結果是這樣的
你會發現二次結果都一樣,資料並沒有被修改。那麼是什麼原因呢?
解析:for迴圈中 userp其實就是for迴圈中的區域性變數,並不是集合list中的元素。僅僅是將元素的引用給了userp。
而userp = new userp(「s4」,4);(等價於userp s5=new userp(「s4」,4);userp=s5;)
這一行是將s5這個新物件的引用給了userp,並未改變list中的任何資料。
注:這裡面的理解難點就是引用的問題,在c語言裡叫指標
fori迴圈可以修改,刪除和增加list的值,
注意:增加和刪除會導致list長度發生變化。
乙個修改的例子如下:
public static void main(string args)
system.out.println(list);
}
2.foreach 迴圈不能修改,刪除,增加 list的值,可以修改引用物件的值
public static void main(string args)
system.out.println(list);
}
結果:
3.利用迭代器可以實現刪除,不能刪除和修改。同樣的也可以對引用物件修改
public static void main(string args)
system.out.println(list);
}
結果:
關於malloc的一點理解
在函式中使用malloc,如果是大的記憶體分配,而且malloc與free的次數也不是特別頻繁,使用malloc與free是比較合適的,但是如果記憶體分配比較小,而且次數特別頻繁,那麼使用malloc與free就有些不太合適了。因為過多的malloc與free容易造成記憶體碎片,致使可使用的堆記憶體...
關於HTTPS的一點理解
通訊使用明文 不加密 內容可能會被竊聽。不驗證通訊方的身份,因此有可能遭遇偽裝。無法證明報文的完整性,所以有可能已經遭到篡改。https http 認證 加密 完整性保護 https是與ssl 安全套接層 組合使用的http協議 http secure 使用ssl之後,請求則變成先和ssl通訊,ss...
關於Action的一點理解
之前學習jsp,就是從網上找些jsp例項 然後模仿,再加工成自己想要的,這樣一來,好多東西都是學了一點皮毛,例如action。下面是在看書時所知道的,看完後,有種頓悟的感覺。action的主要功能是生成頁面顯示所需要的資料,頁面則負責顯示action中的所設定的資料。頁面中的標籤在獲得action所...