我有一個HashMap中這樣定義:當用Integer鍵迭代HashMap時,它是否總是按升序返回鍵?
public Map<Integer, String> staticBlockPositions = new HashMap<Integer, String>();
我通過讓每一個鍵,這樣迭代的地圖上:
for (Integer key : blockPositions.keySet()) {
System.out.println(key);
}
我的問題是,我可以依靠的價值key
總是按升序排列。所以,如果我的HashMap中看起來是這樣的:
{
4: "abc123",
1: "def456",
11: "qwe789",
10: "iop019"
}
(我知道這是JSON格式的,這只是讓你得到數據集的想法)。
請問我的循環總是輸出
1
4
10
11
不管我的數據的順序?
要着重注意,其中的關鍵是增加完全是隨機的順序,我無法控制鍵時添加。
這是一個俄羅斯方塊風格的遊戲,因此讓升序排列的按鍵是必須。
你肯定'Map'是您要使用的數據結構? – Maroun
看看TreeMap的 – rptmat57
有,你可以發現這一點非常簡單的方法。你不需要我們。它正在測試。 –