table

非推奨を表示

*このコンテンツは、ベータ版のAI(人工知能)を使用して翻訳されており、エラーが含まれている可能性があります。このページを英語で表示するには、 こちら をクリックしてください。

このライブラリは、グローバルな table 変数内ですべての機能を提供する一般的なテーブル/配列操作用の機能を提供します。table ライブラリのほとんどの機能は、テーブルが配列またはリストを表すと仮定します。これらの機能のために、テーブルの「長さ」は長さオペレータの結果を意味します。

概要

関数

  • clear(table : table):()

    指定されたテーブルのすべてのキーを nil に設定します。

  • 提供されたテーブルの浅いコピーを返します。

  • concat(t : Array,sep : string,i : number,j : number):string

    指定されたテーブル要素の範囲を、各要素が指定された分離符で分離される文字列として返します。

  • create(count : number,value : Variant):table

    指定された値の多くのインスタンスで満たされた新しいテーブルを返します。

  • find(haystack : table,needle : Variant,init : number):Variant

    開始位置 から、 内の最初の発生のインデックスを返します。

  • 指定されたテーブルを読み込み専用にします。

  • insert(t : Array,pos : number,value : Variant):()

    提供された値を配列のターゲットポジションに挿入します。

  • insert(t : Array,value : Variant):()

    提供された値を配列の最後に付加します。

  • 指定されたテーブルが凍結されている場合は true 、凍結されていない場合は false を返します。

  • 提供されたテーブルの最大数字キーを返すか、テーブルに数字キーがない場合はゼロを返します。

  • move(src : table,a : number,b : number,t : number,dst : table):table

    指定された範囲の要素を 1 つのテーブルから別のテーブルにコピーします。

  • pack(values... : Variant):Variant

    提供された値を含む新しいテーブルを返します。

  • remove(t : Array,pos : number):Variant

    指定された要素を配列から削除し、後で可能な場合に空のスペースを埋めるために、以降の要素を移動します。

  • sort(t : Array,comp : function):()

    提供された比較機能または < オペレータを使用して、テーブル要素をソートします。

  • unpack(list : table,i : number,j : number):Tuple

    指定されたリストからすべての要素をタプルとして返します。

関数

clear

()

指定されたテーブル内のすべてのキーの値を nil に設定します。これにより、# オペレーターが指定されたテーブルに対して 0 を返すようになります。テーブルのアレイ部分の割り当てられた容量が維持され、スペースの効率的な再使用が可能になります。


local grades = {95, 82, 71, 92, 100, 60}
print(grades[4], #grades) --> 92, 6
table.clear(grades)
print(grades[4], #grades) --> ゼロ、0
-- グレードが同じ数のエントリで再び満たされた場合、
-- 可能性のある高価なアレイの再サイズ化は発生しません
-- because the capacity was maintained by table.clear.

この機能は、提供されたテーブルを削除/破壊しません。この機能は、再使用する予定のテーブルに特に使用することを目的としています。

パラメータ

table: table

キーがクリアされるテーブル。

戻り値

()

clone

提供されたテーブルの浅い非凍コピーを返します。

パラメータ

複製するテーブル。

戻り値

提供された表のクローン。

concat

すべての要素が文字列または数値のアレイを指定すると、t[i] ... sep ... t[i+1] ... sep ... t[j] 文字列を返します。sep のデフォルト値は空の文字列、i のデフォルト値は 1、j のデフォルト値は #t です。i が j より大きい場合、空の文字列を返します。

パラメータ

文字列に変換されるテーブル。

sep: string

テーブルの各エントリの間に結合される文字列。

テーブル結合の開始インデックス。

既定値: 1

テーブル結合の終了インデックス。

戻り値

create

配列部分が割り当てられた指定の number の要素、オプションで指定の value で満たされたテーブルを作成します。


local t = table.create(3, "Roblox")
print(table.concat(t)) --> RobloxRobloxRoblox

大きな配列のようなテーブルに挿入し、要素の数に対する適切な上限が確実である場合は、この関数を使用してテーブルを初期化することをお勧めします。これにより、テーブルの配列部分のメモリが十分に大きくなるため、再サイズ化するとコストがかかります。小量の場合、通常は気づかないでしょう。

パラメータ

count: number
value: Variant

戻り値

find

Variant

指定された配列のようなテーブル haystack 内で、インデックス init または開始が指定されない場合は最初の発生の値 needle を見つけます。値が見つからない場合、nil が返されます。

A 線形検索 アルゴリズムが実行されます。


local t = {"a", "b", "c", "d", "e"}
print(table.find(t, "d")) --> 4
print(table.find(t, "z")) --> ゼロ、因為 z はテーブルにない
print(table.find(t, "b", 3)) --> nil, because b appears before index 3

パラメータ

haystack: table
needle: Variant
init: number

戻り値

Variant

freeze

この機能により、指定されたテーブルが読み込み専用になり、現在の状態で「凍結」されます。凍結されたテーブルを変更しようとすると、エラーが発生します。

この凍結効果は浅いため、凍結されたテーブル内のテーブルに書き込むことができます。テーブルを深凍結するには、すべての下位テーブルにこの関数を再帰的に呼び出します。

パラメータ

凍結するテーブル。

戻り値

凍ったテーブル。

insert

()

提供された値を配列のターゲットポジションに挿入します。

パラメータ

追加されているテーブル。

pos: number

値が挿入される位置。

value: Variant

テーブルに付加される値。

戻り値

()

insert

()

提供された値を配列の最後に付加します。

パラメータ

追加されているテーブル。

value: Variant

テーブルに付加される値。

戻り値

()

isfrozen

この機能は、指定されたテーブルが凍結されている場合は true 、凍結されていない場合は false を返します。table.freeze() を使用してテーブルを凍結できます。

パラメータ

チェックする表。

戻り値

テーブルが table.freeze() から凍結されているか。

maxn

提供されたテーブルの最大数字キーを返すか、テーブルに数字キーがない場合はゼロを返します。テーブルのギャップは無視されます。

パラメータ

戻り値

move

テーブルの要素 を、 から まで、インデックスで開始し、 で終了するテーブルにコピーします。割り当てステートメントと同等 dst[t], ..., dst[t + (b - a)] = src[a], ..., src[b] .

デフォルトの dstsrc です。ターゲット範囲とソース範囲が重複する可能性があります。

便宜のために dst を返します。

パラメータ

src: table

ソーステーブル。

開始コピー時間は src[a]

コピーして、src[b] を含めるまで。

コピーして dst[t], ... に。

dst: table

目的のテーブル。

既定値: src

戻り値

dst , 便利のため。

pack

Variant

すべての引数をキー 1、2などに保存された新しいテーブルを返しますそして、「n」フィールドで引数の合計数を持つ。結果のテーブルがシーケンスでないことに注意してください。


local t = table.pack(1, 2, 3)
print(table.concat(t, ", ")) --> 1, 2, 3

パラメータ

values...: Variant

戻り値

Variant

remove

Variant

配列から位置 pos の要素を削除し、削除された要素の値を返します。pos が と の間の整数のとき、要素 と が移動し、要素 が消去されます。pos パラメータが提供されない場合、pos は最後の要素を削除するテーブルの長さにデフォルトします。

パラメータ

要素が削除されたテーブル。

pos: number

削除される要素のインデックス。

戻り値

Variant

sort

()

配列の要素を、t[1] から t[#t] まで、指定された順序でソートします。comp が与えられた場合、最初の要素が最後の順序で2つの要素を受け取り、真実を返す関数である必要があります。

エラー invalid order function for sorting は、両方 comp(a, b)comp(b, a) が返すときに true が発生します。

comp が指定されない場合、標準の Luau オペレーター < が代わりに使用されます。

パラメータ

comp: function

テーブル内の要素を比較するときに使用できるオプション比較機能。この関数は 2つの要素を受け取り、最後の順序で最初の要素が排序される前に返すべきであることを、真に返す必要があります。

既定値: nil

戻り値

()

unpack

指定されたリストから要素を返します。デフォルトでは、i は 1 であり、jlist の長さです。

この機能は、グローバルの unpack() 関数によっても提供されていることに注意してください。

パラメータ

list: table

パック解除する要素のリスト。

パックする最初の要素のインデックス。

既定値: 1

パックする最後の要素のインデックス。

既定値: #list

戻り値