2016-10-03 79 views
0
public class myclass 
{ 
public static void main(String[] args){ 
    Scanner scan = new Scanner(System.in); 
    int array1[] = new int[4]; 
    System.out.println("Enter some integers"); 
    for(int i = 0; i <array1.length; i++){ 
     array1[i] = scan.nextInt(); 
} 
Arrays.sort(array1); 
    HashMap<String, Integer> map = new HashMap<>(); 
    map.put("IdOne", array1[0]); 
    map.put("IdOne", array1[1]); 
    map.put("IdOne", array1[2]); 
    } 
}  

我希望能夠將我輸入到數組中的值與Hashmap中的鍵一起打印出來。 輸出示例:如何打印出此散列表中的鍵和值?

輸入一些整數

吡咯烷酮2

吡咯烷酮3

吡咯烷酮5

回答

0

首先,獲得條目

someMap.entries(); 

然後循環在他們

for (Map.Entry entry : someMap.entries()) { 
    // do something 
} 

然後打印鍵和值

for (Map.Entry entry : someMap.entries()) { 
    System.out.println("key: %s, value: %s\n", entry.getKey(), entry.getValue(); 
} 
+0

請注意,您的地圖被不正確地使用。地圖中的條目具有「鍵」,邏輯上它是用於訪問或更新「值」的「位置」。通過將所有值放入相同的位置('IdOne'),您可以確保先前的值被覆蓋。 –

+0

對於將一個Key分配給一組值的方法,您有任何建議嗎?除了哈希映射之外,還有什麼可以讓我做到這一點嗎? – trevor01010010

+0

「映射」是一種數學函數,定義爲一個鍵只返回一個值。你想要的是一個可能返回一個,兩個或更多值的關鍵字。我會推薦一個返回集合的地圖,然後將這些值添加到地圖中的集合「值」。 –