No Results
Search Tips:
- Please consider misspellings
- Try different search keywords
Map クラス
名前空間
使用方法
Map メソッドはすべてインスタンスメソッドで、対応付けの特定のインスタンスで動作します。次に、Map のインスタンスメソッドを示します。
Map についての詳細は、「対応付け」を参照してください。
Map コンストラクタ
Map のコンストラクタは次のとおりです。
Map<T1, T2>()
署名
public Map<T1,T2>()
例
1swfobject.registerObject("clippy.codeblock-0", "9");Map<Integer, String> m1 = new Map<Integer, String>();
2m1.put(1, 'First item');
3m1.put(2, 'Second item');
4Map<T1, T2>(Map<T1, T2>)
署名
public Map<T1,T2>(Map<T1,T2> mapToCopy)
パラメータ
- mapToCopy
- 型: Map<T1, T2>
- この対応付けの初期化に使用する対応付け。T1 はキーのデータ型で、T2 は値のデータ型です。すべての対応付けのキーおよび値はこの対応付けにコピーされます。
例
1swfobject.registerObject("clippy.codeblock-1", "9");Map<Integer, String> m1 = new Map<Integer, String>();
2m1.put(1, 'First item');
3m1.put(2, 'Second item');
4Map<Integer, String> m2 = new Map<Integer, String>(m1);
5// The map elements of m2 are copied from m1
6System.debug(m2);Map<ID, sObject>(List<sObject>)
署名
public Map<ID,sObject>(List<sObject> recordList)
パラメータ
- recordList
- 型: List<sObject>
- 対応付けに入力される sObject のリスト。
例
1swfobject.registerObject("clippy.codeblock-2", "9");List<Account> ls = [select Id,Name from Account];
2Map<Id, Account> m = new Map<Id, Account>(ls);Map メソッド
Map のメソッドは次のとおりです。すべてインスタンスメソッドです。
clone()
署名
public Map<Object, Object> clone()
戻り値
型: Map (同じデータ型)
使用方法
これが sObject レコード値の対応付けである場合、重複対応付けは対応付けの浅いコピーとなります。つまり、重複には各 sObject レコードへの参照がありますが、レコード自体は重複しません。次に例を示します。
sObject レコードもコピーするには、deepClone メソッドを使用する必要があります。
例
1Account a = new Account(
2 Name='Acme',
3 BillingCity='New York');
4
5Map<Integer, Account> map1 =
6 new Map<Integer, Account> {};
7map1.put(1, a);
8
9Map<Integer, Account> map2 =
10 map1.clone();
11map1.get(1).BillingCity =
12'San Francisco';
13
14System.assertEquals(
15 map1.get(1).BillingCity,
16 'San Francisco');
17
18System.assertEquals(
19 map2.get(1).BillingCity,
20 'San Francisco');containsKey(Object)
署名
public Boolean containsKey(Object key)
パラメータ
- key
- 型: Object
戻り値
型: Boolean
使用方法
キーが String の場合、キーの値では大文字と小文字が区別されます。
例
1Map<string, string> colorCodes =
2 new Map<String, String>();
3
4colorCodes.put('Red', 'FF0000');
5colorCodes.put('Blue', '0000A0');
6
7Boolean contains =
8 colorCodes.containsKey('Blue');
9System.assertEquals(contains, True);deepClone()
署名
public Map<Object, Object> deepClone()
戻り値
型: Map (of the same type)
使用方法
含まれる sObject レコードが重複しないようにして、対応付けの浅いコピーを作成するには、clone() メソッドを使用します。
例
1Account a = new Account(
2 Name='Acme',
3 BillingCity='New York');
4
5Map<Integer, Account> map1 =
6 new Map<Integer, Account> {};
7
8map1.put(1, a);
9
10Map<Integer, Account> map2 =
11 map1.deepClone();
12
13map1.get(1).BillingCity =
14 'San Francisco';
15
16System.assertEquals(map1.get(1).
17 BillingCity, 'San Francisco');
18
19System.assertEquals(map2.get(1).
20 BillingCity, 'New York');equals(Map)
署名
public Boolean equals(Map map2)
パラメータ
- map2
- 型: Map
- map2 引数は、この対応付けと比較する対応付けです。
戻り値
型: Boolean
使用方法
キー/値ペアが同一である場合は、それらの順序に関係なく、2 つの対応付けは等しくなります。== 演算子は、対応付けのキーおよび値を比較するために使用します。
== 演算子は、equals メソッドのコールに相当します。そのため、map1 == map2; ではなく map1.equals(map2); をコールできます。
get(Object)
署名
public Object get(Object key)
パラメータ
- key
- 型: Object
戻り値
型: Object
使用方法
キーが String の場合、キーの値では大文字と小文字が区別されます。
例
1Map<String, String> colorCodes =
2 new Map<String, String>();
3
4colorCodes.put('Red', 'FF0000');
5colorCodes.put('Blue', '0000A0');
6
7String code =
8 colorCodes.get('Blue');
9
10System.assertEquals(code, '0000A0');
11
12// The following is not a color
13// in the map
14String code2 =
15 colorCodes.get('Magenta');
16
17System.assertEquals(code2, null);getSObjectType()
署名
public Schema.SObjectType getSObjectType()
戻り値
使用方法
このメソッドを Describe Information と共に使用して、対応付けに特定のデータ型の sObject を含めるかどうかを指定します。
このメソッドは sObject 値を持つ対応付けでのみ使用できます。
詳細は、「Apex Describe Information について」を参照してください。
例
1Account a = new Account(
2 Name='Acme');
3insert a;
4
5// Create a generic sObject
6// variable s
7SObject s = Database.query
8 ('SELECT Id FROM Account ' +
9 'LIMIT 1');
10
11// Verify if that sObject
12// variable
13// is an Account token
14System.assertEquals(
15 s.getSObjectType(),
16 Account.sObjectType);
17
18// Create a map of generic
19// sObjects
20Map<Integer, Account> M =
21 new Map<Integer, Account>();
22
23// Verify if the list of sObjects
24// contains Account tokens
25System.assertEquals(
26 M.getSObjectType(),
27 Account.sObjectType);isEmpty()
署名
public Boolean isEmpty()
戻り値
型: Boolean
例
1Map<String, String> colorCodes =
2 new Map<String, String>();
3Boolean empty = colorCodes.isEmpty();
4system.assertEquals(empty, true);keySet()
署名
public Set<Object> keySet()
戻り値
型: Set (of key type)
例
1Map<String, String> colorCodes =
2 new Map<String, String>();
3
4colorCodes.put('Red', 'FF0000');
5colorCodes.put('Blue', '0000A0');
6
7Set <String> colorSet = new Set<String>();
8colorSet = colorCodes.keySet();put(Object, Object)
署名
public Object put(Object key, Object value)
パラメータ
- key
- 型: Object
- value
- 型: Object
戻り値
型: Object
使用方法
対応付けにこのキーの対応付けが以前含まれていた場合、以前の値はメソッドで返され、その後置き換えられます。
キーが String の場合、キーの値では大文字と小文字が区別されます。
例
1Map<String, String> colorCodes =
2 new Map<String, String>();
3
4colorCodes.put('Red', 'ff0000');
5colorCodes.put('Red', '#FF0000');
6// Red is now #FF0000putAll(Map)
署名
public Void putAll(Map fromMap)
パラメータ
- fromMap
- 型: Map
戻り値
型: Void
使用方法
fromMap からの新しい対応付けによって、元の対応付けは置き換えられます。
putAll(sObject[])
署名
public putAll(sObject[] sobjectArray)
パラメータ
- sobjectArray
- 型: sObject[]
戻り値
型:
使用方法
このメソッドは、同じ入力の Map コンストラクタのコールと類似しています。
remove(Key)
署名
public Object remove(Key key)
パラメータ
- key
- 型: Key
戻り値
型: Object
使用方法
キーが String の場合、キーの値では大文字と小文字が区別されます。
例
1Map<String, String> colorCodes =
2 new Map<String, String>();
3
4colorCodes.put('Red', 'FF0000');
5colorCodes.put('Blue', '0000A0');
6
7String myColor = colorCodes.remove('Blue');
8String code2 =
9 colorCodes.get('Blue');
10
11System.assertEquals(code2, null);size()
署名
public Integer size()
戻り値
型: Integer
例
1Map<String, String> colorCodes =
2 new Map<String, String>();
3
4colorCodes.put('Red', 'FF0000');
5colorCodes.put('Blue', '0000A0');
6
7Integer mSize = colorCodes.size();
8system.assertEquals(mSize, 2);values()
署名
public List<Object> values()
戻り値
型: List<Object>
例
1Map<String, String> colorCodes =
2 new Map<String, String>();
3
4colorCodes.put('Red', 'FF0000');
5colorCodes.put('Blue', '0000A0');
6
7List<String> colors = new List<String>();
8colors = colorCodes.values();