オブジェクトのセット
セットには、さまざまな種別の要素とともに sObject を含めることができます。
セットには一意の要素が含まれます。sObject の一意性は、オブジェクトの項目の比較によって判断されます。たとえば、同じ名前を持ちその他の項目セットを持たない 2 つの取引先をセットに追加しようとすると、1 つの sObject のみがセットに追加されます。
1// Create two accounts, a1 and a2
2Account a1 = new account(name='MyAccount');
3Account a2 = new account(name='MyAccount');
4
5// Add both accounts to the new set
6Set<Account> accountSet = new Set<Account>{a1, a2};
7
8// Verify that the set only contains one item
9System.assertEquals(accountSet.size(), 1);取引先の 1 つに説明を追加すると、その取引先は一意であるとみなされ、両方の取引先がセットに追加されます。
1// Create two accounts, a1 and a2, and add a description to a2
2Account a1 = new account(name='MyAccount');
3Account a2 = new account(name='MyAccount', description='My test account');
4
5// Add both accounts to the new set
6Set<Account> accountSet = new Set<Account>{a1, a2};
7
8// Verify that the set contains two items
9System.assertEquals(accountSet.size(), 2);