No Results
Search Tips:
- Please consider misspellings
- Try different search keywords
Set と Map
Apex では、リスト以外に 2 つのコレクション型、Set と Map をサポートします。
Set
Set (セット) は、重複する要素を含まないオブジェクトの順序付けされていないコレクションです。コレクション内での要素の順序を追跡する必要がない場合、および要素が一意で並び替えが不要な場合は、Set を使用します。
次の例では、新しい Set を作成して初期化し、要素を追加して、Set に文字列「b」が含まれているかどうかをチェックします。この例は、開発者コンソールで実行できます。
1Set<String> s = new Set<String>{'a','b','c'};
2// Because c is already a member, nothing will happen.
3s.add('c');
4s.add('d');
5if (s.contains('b')) {
6 System.debug ('I contain b and have size ' + s.size());
7}例の実行後、次の行が出力に表示されます。
Map
Map (マップ) は、キー - 値ペアのコレクションで、キーはプリミティブデータ型です。キーを使用して参照する値を格納する場合は、Map を使用します。たとえば、Map を使用すると、従業員 ID に対応する住所のリストを格納できます。次の例では、Map を作成し、項目を Map に追加して、キーである従業員 ID に基づいて対応する方の項目を取得します。取得された住所は、デバッグ出力に書き出されます。
1Map<Integer,String> employeeAddresses = new Map<Integer,String>();
2employeeAddresses.put (1, '123 Sunny Drive, San Francisco, CA');
3employeeAddresses.put (2, '456 Dark Drive, San Francisco, CA');
4System.debug('Address for employeeID 2: ' + employeeAddresses.get(2));例の実行後、次の行が出力に表示されます。
Map は、作成時にデータをコレクションに入力するためのショートカット構文もサポートします。次の例では、2 つのキー - 値ペアを持つ Map を作成します。実行すると、文字列「apple」がデバッグ出力に表示されます。
1Map<String,String> myStrings =
2new Map<String,String>{'a'=>'apple','b'=>'bee'};
3System.debug(myStrings.get('a'));Set と Map には多くの役に立つメソッドが含まれています。たとえば、ある Set のすべての要素を別の Set に追加するには、Set に対して addAll メソッドを使用します。また、Map に含まれる値のリストを返すには、values をコールします。