集合數據管理
在後臺開發過程中,集合的靈活使用是必不可少的.而最常用的集合也就是:list , set , map 三種了 . 在不同的情境下者三種集合使用也不同 . 這段時間在寫後臺的過程中使用了大量的集合遍歷數據.
基本做了以下總結 ,:
1. 三種集合的區別與聯系
區別: (1) . list集合 , list存儲存儲數據是有序,可重復的 . list是常用於需要有序的遍歷所需的數據.
(2) . set集合 , set集合存儲的數據是無序且不可重復的 . 在對所需要展示的數據無順序要求且不可重復出現的情境下,set集合是最常用的.
(3) . map集合, map集合是以鍵值對的形式出現的 , 其中 : 鍵值都是可以為任意類型的 . 不過有一點需要註意的是,map集合的鍵的值為不可重復 .
所以 , 在添加鍵值對的時候 , 可以通過map.contains(xx) 返回值為Boolean值 ,來判斷是否已經存在該值為鍵的鍵值對.
聯系: (1) . list可以通過創建對象的方式來實現類型的轉換.當然,假如list集合中存在重復的情況,則是無法完成轉換的.
(2) . map集合中的value可以是任意類型包括 List 和 Set 集合.當然在頁面中便利數據的時候,需要對便利標簽寫兩重 .
2 . 對於list和set 集合的頁面便利這裏就不再多做解釋.最近在做數據遍歷和顯示的時候 , 遇到了一種非常尷尬的情況
就是: 頁面中所遍歷顯示的數據需要適應不同的情境 , 也就是 : 同一個頁面中的同一代碼塊需要適應不同的客戶做不同的顯示,包括一些本是靜態的title和content內容 ,
頁面裏面塊內的content就是通過list集合遍歷 , 也就是從後臺單獨拿出的list集合在頁面中進行遍歷顯示 , .
比如:
如圖所示,對於配套/服務的具體內容,要求在不同的頁面中能做出不同的內容顯示 , 且標題還要顯示不同.這裏用到的就是map集合,其鍵值對的數據類型為:map<Object , List<Object>>.以這種形式在頁面中進行顯示.即可實現預期的效果.
當然,使用嵌套for循環執行這種方式頁面加載會有點慢.具體的效率優化方法正在研究........
集合數據管理