List クラス
名前空間
使用方法
List メソッドはすべてインスタンスメソッドで、リストの特定のインスタンスで動作します。たとえば、次のコードは myList からすべての要素を削除します。
clear メソッドにはパラメーターは含まれませんが、それをコールするリスト自身が暗黙的なパラメーターです。
List についての詳細は、「リスト」を参照してください。
List のコンストラクター
List のコンストラクターは次のとおりです。
List のメソッド
List のメソッドは次のとおりです。すべてインスタンスメソッドです。
add(listElement)
署名
public Void add(Object listElement)
パラメーター
- listElement
- 型: Object
戻り値
型: Void
例
add(index, listElement)
署名
public Void add(Integer index, Object listElement)
パラメーター
- index
- 型: Integer
- listElement
- 型: Object
戻り値
型: Void
例
次の例では 6 つの要素を持つリストが作成され、最初と 2 番目のインデックス位置に整数が追加されます。
addAll(fromList)
署名
public Void addAll(List fromList)
パラメーター
- fromList
- 型: List
戻り値
型: Void
addAll(fromSet)
署名
public Void addAll(Set fromSet)
パラメーター
- fromSet
- 型: Set
戻り値
型: Void
clone()
署名
public List<Object> clone()
戻り値
型: List<Object>
使用方法
コピーされたリストは、現在のリストと同じデータ型です。
これが sObject レコードのリストである場合、重複リストはリストの浅いコピーとなります。つまり、重複には各オブジェクトへの参照がありますが、sObject レコード自体は重複しません。次に例を示します。
sObject レコードもコピーするには、deepClone メソッドを使用する必要があります。
例
contains(listElement)
署名
public Boolean contains(Object listElement)
パラメーター
- listElement
- 型: Object
戻り値
型: Boolean
例
deepClone(preserveId, preserveReadonlyTimestamps, preserveAutonumber)
署名
public List<Object> deepClone(Boolean preserveId, Boolean preserveReadonlyTimestamps, Boolean preserveAutonumber)
パラメーター
- preserveId
- 型: Boolean
- (省略可能) preserveId 引数は、元のオブジェクトの ID を重複で保持するか削除するかを指定します。true に設定すると、ID はコピーされたオブジェクトにコピーされます。デフォルトは false であるため、ID はクリアされます。
- preserveReadonlyTimestamps
- 型: Boolean
- (省略可能) preserveReadonlyTimestamps 引数は、参照のみのタイムスタンプとユーザー ID 項目を重複で保持するか削除するかを指定します。true に設定すると、参照のみの項目 CreatedById、CreatedDate、LastModifiedById、および LastModifiedDate は、コピーされたオブジェクトにコピーされます。デフォルトは false であるため、値はクリアされます。
- preserveAutonumber
- 型: Boolean
- (省略可能) preserveAutonumber 引数は、元のオブジェクトの自動採番項目を重複で保持するか削除するかを指定します。true に設定すると、自動採番項目はコピーされたオブジェクトにコピーされます。デフォルトは false であるため、自動採番項目はクリアされます。
戻り値
型: List<Object>
使用方法
返されたリストは、現在のリストと同じデータ型です。
含まれる sObject レコードが重複しないようにしてリストの浅いコピーを作成するには、clone メソッドを使用します。
例
この例は、2 つの取引先を含むリストのディープコピーを実行します。
equals(list2)
署名
public Boolean equals(List list2)
パラメーター
- list2
- 型: List
- このリストと比較するリストです。
戻り値
型: Boolean
使用方法
それぞれの要素が等しく、要素の順序が同じである場合、2 つのリストは等しくなります。== 演算子は、リストの要素を比較するために使用します。
== 演算子は、equals メソッドのコールに相当します。そのため、list1 == list2; の代わりに list1.equals(list2); をコールできます。
get(index)
署名
public Object get(Integer index)
パラメーター
- index
- 型: Integer
戻り値
型: Object
使用方法
プリミティブデータ型または sObject 型の一次元リストの要素を参照するには、次の例に示すように、リスト名の後に要素のインデックス位置を角括弧で囲んで表記することもできます。
例
getSObjectType()
署名
public Schema.SObjectType getSObjectType()
戻り値
使用方法
このメソッドを Describe Information と共に使用して、リストに特定のデータ型の sObject を含めるかどうかを指定します。
このメソッドは sObject で構成されているリストでのみ使用できます。
詳細は、「Apex Describe Information について」を参照してください。
例
indexOf(listElement)
署名
public Integer indexOf(Object listElement)
パラメーター
- listElement
- 型: Object
戻り値
型: Integer
例
remove(index)
署名
public Object remove(Integer index)
パラメーター
- index
- 型: Integer
戻り値
型: Object
例
set(index, listElement)
署名
public Void set(Integer index, Object listElement)
パラメーター
- index
- 型: Integer
- 設定するリスト要素のインデックスです。
- listElement
- 型: Object
- 設定するリスト要素の値です。
戻り値
型: Void
使用方法
プリミティブデータ型または sObject の一次元リストの要素を設定するには、リスト名の後に要素のインデックス位置を角括弧で囲んで表記することもできます。
例
sort()
署名
public Void sort()
戻り値
型: Void
使用方法
このメソッドを使用して、プリミティブ型、SelectOption 要素、sObject (標準オブジェクトとカスタムオブジェクト) を並べ替えできます。sObject に使用される並べ替え順についての詳細は、「sObject のリストの並べ替え」を参照してください。カスタムデータ型 (Apex クラス) が Comparable インターフェースを実装している場合は、カスタムデータ型を並べ替えできます。Comparator インターフェースを実装しているクラスをパラメーターとして List.sort メソッドに渡す方法もあります。
15 文字の ID と 18 文字の ID の両方を含む List<Id>s で sort() メソッドを使用する場合、API バージョン 35.0 以降では同じレコードの ID がまとめて並べ替えられます。
例
次の例で、リストには 3 つの要素があります。リストを並べ替えると、最初の要素には値が割り当てられていないため null になります。2 番目の要素の値は 5、3 番目の要素の値は 10 になります。
toString()
署名
public String toString()
戻り値
型: String
使用方法
- コレクションごとに最大 10 項目が出力に含まれ、その後に省略記号 (…) が続きます。
- 同じオブジェクトがコレクションに複数回含まれている場合、そのオブジェクトは出力に 1 回のみ表示されます。後続の参照は (already output) と表示されます。