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