java 排序的問題
問題描述
[{TIME21=0, TIME22=2, TIME23=0, TIME12=0, TIME13=1, LOAN_AMT=500, TIME10=0, TIME20=0, TIME11=1, TIME17=0, TIME9=2, TIME16=0, TIME15=0, TIME14=1, TIME5=0, REG_DT=20170517, TIME6=0, TIME19=0, TIME7=0, TIME18=1, TIME8=4, TIME1=0, TIME2=0, TIME3=0, TIME4=0, TIME0=0}, {TIME21=3, TIME22=2, TIME23=3, TIME12=6, TIME13=7, LOAN_AMT=1000, TIME10=8, TIME20=2, TIME11=6, TIME17=6, TIME9=7, TIME16=2, TIME15=7, TIME14=5, TIME5=0, REG_DT=20170517, TIME6=1, TIME19=1, TIME7=3, TIME18=1, TIME8=5, TIME1=0, TIME2=1, TIME3=0, TIME4=0, TIME0=3}]
這是一個形式為List<Map<String,Object>> 格式的list,里面是map,我想經(jīng)過排序后讓其按照TIME0,TIME1,TIME2.....TIME23的形式排序,該怎么排序呢?而且類似 TIME1 這種的類型是BigDecimal。里面的LOAN_AMT和REG_DT不用管,我只是用循環(huán)得到TIMExx這些信息
問題解答
回答1:其實,你只需要把List<Map<String,Object>>改成List<TreeMap<String,Object>>就可以了.....TreeMap是按照Kay進行排序的。
TreeMap<String,Object> map = new TreeMap<>();map.put('TIME0','TIME0');map.put('TIME22','TIME22');map.put('TIME15','TIME15');map.put('TIME11','TIME11');map.put('TIME19','TIME19');map.put('TIME1','TIME1');System.out.println(map); // {TIME0=TIME0, TIME1=TIME1, TIME11=TIME11, TIME15=TIME15, TIME19=TIME19, TIME22=TIME22}
相關(guān)文章:
1. 我的html頁面一提交,網(wǎng)頁便顯示出了我的php代碼,求問是什么原因?2. 數(shù)據(jù)庫 - 使用讀寫分離后, MySQL主從復(fù)制延遲會導(dǎo)致讀不到數(shù)據(jù)嗎?3. 我在centos容器里安裝docker,也就是在容器里安裝容器,報錯了?4. django - 后臺返回的json數(shù)據(jù)經(jīng)過Base64加密,獲取時用python如何解密~!5. node.js - node 客戶端socket一直報錯Error: read ECONNRESET,用php的socket沒問題哈。。6. docker 17.03 怎么配置 registry mirror ?7. tp6表單令牌8. 老哥們求助啊9. node.js - gulp文件監(jiān)聽的問題10. 如何解決docker宿主機無法訪問容器中的服務(wù)?
