0
我有一個關於心尖地圖小查詢。我有一張地圖map <String, list <Account>>
。我正在嘗試執行以下操作 -
需要做什麼:我將一個鍵傳遞給字符串變量,然後將該字符串傳遞給Map.get()方法以獲取該鍵的值。在這裏,它沒有給我正確的答案。即使當我使用System.Debug()打印出地圖時,它也會以不同的方式打印出地圖!
String Id = 'Some Id that is the key in the map';
List <Account> testList = Map.get(Id);
這不給我相應的價值,我不知道爲什麼!
BUT
,值被完全打印出來。
for(String s : Map.keySet()){
List <Account> TestList = Map.get(s);
System.Debug('TestList' + TestList);
}
測試列表實際打印出什麼是應該打印出來,即它打印出在那裏,當我打印地圖不打印出預期中的各鍵。
什麼是預期:我想傳遞一個鍵到Map.get()方法來檢索結果,但它顯然不在我的情況發生。
各種幫助真的很感謝!
在代碼的第一位,你的Map.get(Id)返回什麼或只是null? – SMGoodyear 2012-07-13 21:32:08
@SMGoodyear它只是返回null。 – subodhbahl 2012-07-13 21:36:52
好爽。我注意到您在密鑰集中使用Salesforce ID的幾個地方是否代表Id,或者是否是Id的另一種形式?我只問,因爲我想知道它是否是SF ID,並且將它們存儲爲字符串,您可能會遇到有關ID與15和18字符表示形式有關的問題。順便提一下,這是一個完整的黑暗刺傷。如果情況並非如此,那麼我們將不得不提出另一種可能性 - 但總是首先將顯而易見的方法排除在外。 – SMGoodyear 2012-07-13 22:02:24