第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Java按雙值排序哈希圖不起作用

Java按雙值排序哈希圖不起作用

縹緲止盈 2021-09-29 10:18:49
我正在嘗試對包含一個對象和一個雙精度值的哈希圖進行排序,但它沒有按預期工作。這是我的代碼。HashMap<Route, Double> unsortedRoutes = new HashMap<>();unsortedRoutes.add(new Route("Route Z"),9.49307305463114167);unsortedRoutes.add(new Route("Route A"),9.546311415463114167);unsortedRoutes.add(new Route("Route K"),9.37307305463114167);unsortedRoutes.add(new Route("Route Y"),9.89730305463114167);unsortedRoutes.add(new Route("Route Z"),3.49307305463114167);unsortedRoutes.add(new Route("Route A"),3.41870305463114167);unsortedRoutes.add(new Route("Route K"),4.49307305463114167);unsortedRoutes.add(new Route("Route Y"),5.34307305463114167);HashMap<Route, Double> sortedRoutes = new HashMap<>();        unsortedRoutes.entrySet()                .stream()                .sorted(comparingByValue())                .forEachOrdered(x -> sortedRoutes.put(x.getKey(), x.getValue()));當我運行代碼時,這些是我得到的結(jié)果Name: Route D Distance = 3.4187030546311417Name: Route J Distance = 5.343073054631142Name: Route A Distance = 9.546311415463114Name: Route Y Distance = 9.897303054631141Name: Route U Distance = 4.493073054631141Name: Route K Distance = 9.373073054631142Name: Route Z Distance = 9.493073054631141Name: Route Q Distance = 3.4930730546311417我希望結(jié)果按升序列出。
查看完整描述

1 回答

?
aluckdog

TA貢獻1847條經(jīng)驗 獲得超7個贊

HashMaps 不保證存儲在其中的元素的順序,因此即使您put以排序方式調(diào)用,結(jié)果HashMap也沒有內(nèi)在順序。如果要保留put調(diào)用的順序,則應使用LinkedHashMap

Map<Route, Double> sortedRoutes = new LinkedHashMap<>();


查看完整回答
反對 回復 2021-09-29
  • 1 回答
  • 0 關(guān)注
  • 222 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號