リスト添字演算子

リスト添字演算子 ([]) は、リストの 1 要素を返します。

注: リスト添字演算子は Release 6 で新しく追加されました。

次の例は、[Categories] フィールドの要素 2 を返します。

Categories[2]

添字は、数字と、それを囲むカッコで構成されています。数値には、定数、変数、式が使用できます。小数点以下は整数に丸められます。添字はリスト名の後に付きます。

次の例は、変数の添字を使用してリストを反復します。

n := 1;
@While(n <= @Elements(Categories);
   @Prompt([OK]; "Category " + @Text(n); Categories[n]);
   n := n + 1
)

リスト内の最初の要素は、添字 [1] です。[1] より小さい添字、またはリスト内の要素の数より大きい添字の場合には「配列インデックスの越境」エラーが返されます。

添字演算子は、データエンティティがスカラー値であっても、リストを許可するすべてのデータ型 (テキスト、数字、日付/時刻) で有効です。リストを許可しないデータ型 (リッチテキスト) で添字演算子が有効なのは、添字 [1] が使用されている場合のみです。この場合は、カレント値を変更せずに返します。

添字演算子は、割当ステートメントの左側では使用できません。つまり、添字付きの要素には値を割り当てられません。完全なリストを作成してから、値を割り当てる必要があります。例えば、Categories が 3 つの要素から成るリストであり、要素 2 に新しい値を割り当てるには、次のように記述します。

FIELD Categories := Categories[1] : "CatNew" : Categories[3]