ApexでSOQLを利用してオブジェクトの配列を取得する際にMapに変換したい時の方法

sObject[] records = [SELECT Id, Name FROM Account];
Map<Id, sObject> recordMap = new Map<Id, sObject>();
for(sObject record : records) {
    recordMap.put(record.Id, record);
}

この書き方は以下のような書き方ができる。短くする事が可能。

sObject[] records = [SELECT Id, Name FROM Account];
Map<Id, sObject> recordMap = new Map<Id, sObject>(records);

以下のような書き方もできる。さらに短くする事が可能。

Map<Id, sObject> recordMap = new Map<Id, sObject>([SELECT Id, Name FROM Account]);

以上!

参考:https://developer.salesforce.com/docs/atlas.ja-jp.apexcode.meta/apexcode/apex_map_sobject.htm

この記事へのコメント

コメントはまだありません。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA