This content has been machine translated dynamically.
Dieser Inhalt ist eine maschinelle Übersetzung, die dynamisch erstellt wurde. (Haftungsausschluss)
Cet article a été traduit automatiquement de manière dynamique. (Clause de non responsabilité)
Este artículo lo ha traducido una máquina de forma dinámica. (Aviso legal)
此内容已动态机器翻译。 放弃
このコンテンツは動的に機械翻訳されています。免責事項
This content has been machine translated dynamically.
This content has been machine translated dynamically.
This content has been machine translated dynamically.
This article has been machine translated.
Dieser Artikel wurde maschinell übersetzt. (Haftungsausschluss)
Ce article a été traduit automatiquement. (Clause de non responsabilité)
Este artículo ha sido traducido automáticamente. (Aviso legal)
この記事は機械翻訳されています.免責事項
이 기사는 기계 번역되었습니다.
Este artigo foi traduzido automaticamente.
这篇文章已经过机器翻译.放弃
Translation failed!
テーブル
テーブルは、キーと値を持つエントリのコレクションです。これらは、提供される唯一の集約データ構造です。他のすべてのデータ構造(配列、リスト、セットなど)はテーブルから構築されます。テーブルのキーと値は、他のテーブルを含む任意の型にすることができます。同じテーブル内のキーと値は、型を混在させることができます。
- テーブルコンストラクタ
- テーブルの使用状況
- 配列としてのテーブル
- レコードとしてのテーブル
テーブルコンストラクタ
テーブルコンストラクタを使用すると、キーと関連する値を持つテーブルを指定できます。構文は次のとおりです。
{[key1] = value1, [key2] = value2, …}
キーと値は式です。キーが予約語でない文字列の場合、キーの前後の角かっこと引用符は省略できます。例:
{key1 = “value1”, key2 = “value2”, key3 = “value3”}
空のテーブルは単に {} で指定されます。
テーブルコンストラクタは、テーブルを参照する変数を設定するために代入で使用することができます。例:
local t1 = {} – set t1 to an empty table local t2 = {key1 = “value1”, key2 = “value2”, key3 = “value3”}
テーブル自体は匿名であることに注意してください。複数の変数が同じテーブルを参照することがあります。上記の例を続けます。
ローカルt3 = t2-t2とt3の両方が同じテーブルを参照しています
テーブルの使用状況
期待どおりに、キーを使用してテーブル内の値を検索できます。構文は table[key]で、table はテーブル参照 (通常はテーブルに割り当てられた変数)、key はキーを提供する式です。これが式で使用され、キーがテーブルに存在する場合、キーに関連付けられた値が返されます。キーがテーブルにない場合は、nilを返します。これが代入の変数として使用され、キーがテーブルに存在しない場合、キーと値の新しいエントリが作成されます。キーがすでにテーブルに存在する場合は、キーの値を新しい値で置き換えます。例:
local t = {} – sets t to an empty table t[“k1”] = “v1” – creates an entry for key “k1” and value “v1” v1 = t[“k1”] – sets v1 to the value for key “k1” = “v1” t[“k1”] = “new_v1” – sets the value for key “k1” to “new_v1”
配列としてのテーブル
従来の配列は、インデックスとして整数キーを持つテーブルを使用して実装することができます。配列は、負のものを含む任意のインデックスを持つことができますが、慣例はインデックス1で配列を開始することです(CやJavaのような言語の場合のように0ではありません)。そのような配列のための特別な目的のテーブルコンストラクタがあります:
{value1, value2, value3, … }
配列参照は、配列[インデックスを作成します]です。
長さ演算子#は、1から始まる連続したインデックスを持つ配列の要素の数を返します。例:
local a = {“value1”, “value2”, “value3”} local length = #a – sets length to the length of array a = 3
配列は、定義された要素のみが割り当てられているスパースにすることができます。しかし、#は、非連続のインデックスを持つ疎配列では使用できません。例:
local sparse_array = {} – set up an empty array sparse_array[1] = “value1” – add an element at index 1 sparse_array[99] = “value99” – add an element at index 99
多次元配列は、テーブルのテーブルとして設定できます。たとえば、3x3 マトリックスは次のように設定できます。
local m = {
{1, 2, 3}, {4, 5, 6}, {7, 8, 9} }
local v22 = m[2][2] – sets v22 to 5
レコードとしてのテーブル
フィールドを持つレコードは、フィールド名キーを持つテーブルとして実装できます。テーブル[“field”]には、参照フォームtable.fieldを使用することができます。例:
local person = {name = “John Smith”, phone = “777-777-7777”} local name = person.name – sets name to “John Smith”
テーブルの配列は、レコードのシーケンスに使用できます。例:
local people = { {name = “John Smith”, phone = “777-777-7777”}, {name = “Jane Doe”, phone = “888-888-8888”} … }
name = people[2].name – sets name to “Jane Doe”
共有
共有
This Preview product documentation is Citrix Confidential.
You agree to hold this documentation confidential pursuant to the terms of your Citrix Beta/Tech Preview Agreement.
The development, release and timing of any features or functionality described in the Preview documentation remains at our sole discretion and are subject to change without notice or consultation.
The documentation is for informational purposes only and is not a commitment, promise or legal obligation to deliver any material, code or functionality and should not be relied upon in making Citrix product purchase decisions.
If you do not agree, select Do Not Agree to exit.