ここは旧式の4DドキュメントWebサイトです。最新のアップデートされたドキュメントを読むには新サイトをご利用下さい→ developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
New collection
|
New collection {( value {; value2 ; ... ; valueN} )} -> 戻り値 | ||||||||
引数 | 型 | 説明 | ||||||
value | 数値, テキスト, 日付, オブジェクト, コレクション, ポインター |
![]() |
コレクションの値 | |||||
戻り値 | コレクション |
![]() |
新しいコレクション | |||||
New collection コマンドは新しい空の、あるいは事前に値を入れたコレクションを作成し、その参照を返します。
引数を何も渡さなかった場合、New collection は空のコレクションを作成し、その参照を返します。
返された参照は、_O_C_COLLECTIONコマンドで宣言された4D変数へと割り当てる必要があります。
注: _O_C_COLLECTIONはCollection 型の変数を宣言しますが、何のコレクションも作成しないという点に注意してください。
オプションとして、一つあるいは複数のvalue(s) 引数を渡すことで、既に値の入った新しいコレクションを作成することができます。
そうでないなら、オブジェクト記法での割り当てを使用して要素を一つずつ追加あるいは編集していくことができます。例:
myCol[10]:="My new element"
新しい要素インデックスがコレクションの要素の既存の最後の要素より大きい場合、コレクションは自動的にリサイズされ、中間の要素には全てnull値が入ります。
注: オブジェクト記法についてのより詳細な情報については、オブジェクト記法の使用 の章を参照してください。
サポートされている型(数値、テキスト、日付、ポインター、オブジェクト、コレクション、等)であれば、値はいくらでも渡すことができます。配列とは異なり、コレクションでは異なる型のデータを混ぜることができます。
ただし以下の変換問題については注意する必要があります:
新しい空のコレクションを作成し、それを4Dコレクション変数に割り当てる場合を考えます:
C_COLLECTION($myCol)
$myCol:=New collection
//$myCol=[]
事前に値の入ったコレクションを作成したい場合を考えます:
C_COLLECTION($filledColl)
$filledColl:=New collection(33;"mike";"november";->myPtr;Current date)
//$filledColl=[33,"mike","november",->myPtr,2017-03-28T22:00:00.000Z]
新しいコレクションを作成し、そこに新しい要素を追加する場合を考えます:
C_COLLECTION($coll)
$coll:=New collection("a";"b";"c")
//$coll=["a","b","c"]
$coll[9]:="z" //"z"という値を持つ第10要素を追加する
$vcolSize:=$coll.length //10
//$coll=["a","b","c",null,null,null,null,null,null,"z"]
注: この例題ではデータベース内においてオブジェクト記法が有効化されている必要があります(オブジェクト記法 の段落を参照してください)。
プロダクト: 4D
テーマ: コレクション
番号:
1472
初出: 4D v16 R4
ランゲージリファレンス ( 4D v20 R7)