6

次の例は、数値と文字列の間の変換とその逆の変換が可能なテーブルを作成することになっていますが、実行に失敗します。

数字キーを辞書型で使っているからでしょうか。それとも、lua がテーブル インデックスを 1 から開始するためですか?

これを達成するためのより良い方法はありますか?

dyeColor = {
    0="black"    ,  black     = 0,
    1="red"      ,  red       = 1, 
    2="green"    ,  green     = 2,
    3="brown"    ,  brown     = 3,
    4="blue"     ,  blue      = 4,
    5="purple"   ,  purple    = 5,
    6="cyan"     ,  cyan      = 6,
    7="lightGray",  lightGray = 7,
    8="gray"     ,  gray      = 8,
    9="pink"     ,  pink      = 9,
    10="lime"     ,  lime      =10,
    11="yellow"   ,  yellow    =11,
    12="lightBlue",  lightBlue =12,
    13="magenta"  ,  magenta   =13,
    14="orange"   ,  orange    =14,
    15="white"    ,  white     =15}

このオンラインインタープリター(http://repl.it/languages/Lua)を使用すると、エラーが発生します

[string "stdin"]:2: '}' expected (to close '{' at line 1) near '='attempt to call a nil value

4

3 に答える 3