0

在 Zscript 我可以创建一个包含 8 个项目的列表

[VarDef, myArr(8)]

如何向该列表添加(推送)变量?

[VarDef, temp, 14]
[myArr.push(temp)] // ??? there is no push command
4

1 回答 1

0

我最终想通了。不是我未来的自己,您需要为数组长度设置一个新变量。

(我认为没有与 array.length 等效的 Zscript。

这是一个创建空白数组然后在循环中填充它的示例

[IButton, "Append", "stuff!",

// create array with 5 elements
[VarDef, myArr(5)]

// [Note,myArr(1),,1] // can't do! Variable has not been assigned a value

// create variable equal to array length
[VarDef, len, 5]

// create string to hold results
[VarDef, s, ""]

// loop over array
[VarSet,i,0] 
    [Loop,len,
        [VarSet,myArr(i), i * 2]
        [VarSet,s, [StrMerge, s, i, " "]]
        // [Note,i,,0.5] // show counter
        // [Note,s,,0.5] // show string value
        [VarInc,i] // increase loop counter by 1
    ]

// show results!
[Note,myArr(1),,1]
]
于 2016-07-06T19:36:24.507 回答