Java中List集合轉Map集合報錯:Duplicate key

一隻愛閱讀的程式設計師發表於2021-06-13

一、問題由來

  最近生成環境剛釋出了一個版本,本人負責優化的一個功能在進行測試時,報錯了一個異常,duplicate key;去百度裡面看了一下,

意思很明確就是建重複,而且錯誤是在Java程式碼中丟擲來的。

 

 

二、問題分析

  自己立馬去檢視Java程式碼,發現這樣寫是沒有問題的,問題出在查詢出來的結果進行轉換時,鍵有重複的,可是有不同的值。因此

才報了一個鍵重複的錯誤。搞清楚問題的原因後就知道怎麼解決了。
三、解決方案

  解決辦法的核心就是讓返回的結果中,鍵沒有重複的值,這樣就可以解決問題。這個是原來錯誤的查詢語句,

 

 更改後的查詢語句為

 

 主要做了兩個改動,一個是按照鍵進行分組查詢,這樣就可以去重,其次是取值時,使用max函式取最大值即可。釋出到測試環境,新增了測試資料

後,測試結果正確,修改 方式可行。

相關文章