今天在封裝一段**時遇到這樣乙個問題
在tools類中為了實現
map和
list
巢狀 用
map物件反覆將資料放入
list
中 我用了這樣一段**
list> list=new list>();
mapstring,int>map=new map();
rs=stat
.executequery(sql);
resultsetmetadata rsmd=rs
.getmetadata();
intt=0;
intcount =rsmd.getcolumncount();
while(rs.next())
以上有一些為連線資料庫的語言
意思也就是把資料庫中的表的資料放入map和
list
巢狀的結構之中 最後發現 這個
list
只多次儲存了同乙個物件 其中除錯了很久 最後發現 將
map.clear()
換成map
的定義函式就行了 我原本以為
map定義一次即可 每次存進
list
之後即可銷毀重新存入值 然而
list
中add
函式只是將
map的物理位置告訴了
map
裡面存的元素一旦改變
list
中的元素隨之改變 這樣 當
map。
clear
執行
list
即清空 解決的辦法就是每次要向
list
中新增資料 只有定義乙個新的
map物件 雖然物件名字都為
map
但是彼此的物理位置不同 在往
list
新增資料時互不干擾 這樣 便完成了
map和
list
的巢狀
乙個包含巢狀遞迴資料結構的物件的排序實現
待排序的資料結構 人 person person有乙個欄位children,型別為乙個陣列,型別也是person.任務 寫乙個排序函式,輸入引數為person型別的變數,將其children屬性裡包含的person陣列的元素進行遞迴排序。完整源 import stylesheets import s...
初學資料結構,乙個困惑的問題
有乙個很簡單的題目是這樣的 給乙個存有隨機數的陣列排序 書上給的程式如下 include define maxnum 100 typedef int keytype typedef int datatype 資料結構部分 typedef struct recordnode typedef struc...
乙個c語言資料結構的問題
我先不說什麼,先看下面的 cpp void delete pos sequence list sequence list slt,int position if position 0 position slt size for i position i slt size 1 i slt size 這...