我通常這樣做是爲了一個新的地圖設置爲私有變量:如何使用另一個Map作爲值編碼Map的設置方法?
public static void setListaClausulas(Map<String, Clausula> nvLista) {
listaClausulas = new TreeMap<String, Clausula>(nvLista);
}
我想這是確定以設置nvLista
,它的所有成員,而不是一個參考的新副本,是嗎?
但現在我還有一個地圖內的地圖,我這樣做:
public static void setListaClausulas(Map<String, Map<String, Clausula>> nvLista) {
listaClausulas = new TreeMap<String, Map<String, Clausula>>(nvLista);
}
這是做還是你推薦別的事情的正確方法?我想要的是設置nvLista
(及其所有元素)的新副本,而不是僅複製參考。
你需要克隆'Clausula'對象了,或者你可以使用舊的對象,只是複製地圖? – 2010-05-27 20:23:43
我也需要複製'Clausula'對象,但這些都是照顧的,不需要擔心他們:) – 2010-05-27 22:27:51