3 回答

TA貢獻1876條經驗 獲得超6個贊
HashMap只需要兩個參數:key和value
https://docs.oracle.com/javase/8/docs/api/index.html?java/util/HashMap.html
本key應該是一個標識符是唯一的目標。在您的情況下,您正在使用id. 如果這是您的數據庫表(或任何其他唯一數字)上的主鍵,則完全正確。
其他字段需要一起包裝成一個對象(或者單獨存儲在 HashMap 中,每個字段都有自己的唯一 id;根據您的問題,這看起來不像您在做什么)。
你應該做這樣的事情:
final Customer customerObject = new Customer(CName, Surname, Number, Cell, Buiilding, Street, suburb, City, postal);
hashmap.put(id, customerObject);
創建自定義Customer類及其所有字段留給讀者作為練習。

TA貢獻1886條經驗 獲得超2個贊
如果查看接口put
方法的源代碼,Map
您會發現只能找到:
put(K key, V value)
這正是 aMap
應該如何工作。您將一個鍵映射到一個值,這樣您就可以快速訪問它而不用遍歷整個映射。因此,在您的情況下,我建議您將所有信息存儲在一個 serperate 對象中,Customer
并將其映射到客戶的相關 id。
如果您需要有效地查詢客戶數據(同時不使用 id),請考慮使用可以為您完成工作的數據庫。

TA貢獻1906條經驗 獲得超10個贊
Put 方法是Map<K, V>.put(K key, V value)
簽名的。所以你不能只是添加值。首先弄清楚密鑰應該是什么,然后使用 put 方法。您可以通過調用Map.get(Object key)
方法使用鍵檢索值。
添加回答
舉報