ipex

Salesforceの情報や趣味(ゲーム等)についてフリーに

Map<Id,List<sObject__c>>型に簡潔に格納する!

SOQLの検索結果をもとに、
valueがList型のMapを作成する場合にいつも使っている奴の紹介。

シンプルで綺麗な形にまとまるので、相当使い倒しています。

if (sampleMap.containskey(sampleKey)) {
    sampleMap.get(sampleKey).add(sampleRecord);
} else {
    sampleMap.put(sampleKey, new List<SamplesObject__c>());
    sampleMap.get(sampleKey).add(sampleRecord);
}


Mapにkeyが含まれている場合は、valueのListにaddして、
含まれていない場合は、新しいListにaddしていくような感じですね。

含まれていない場合の書き方は、あんまり好きじゃないけど宣言時にsampleRecordを入れる方法もアリ。