在小基本中将数组转换为字符串的规则是什么?
b[0] = "b0"
b[2] = 1
a[0][0] = "a"
a[0][1] = 123
a[1][2] = "True"
a[1][3] = b
TextWindow.WriteLine(a)
'0=0=a;1=123;;1=2=True;3=0\=b0\;2\=1\;;;
c[0][0][0] = "a"
c[0][1][0] = 123
c[1][2][0] = "True"
c[1][3][0] = "b0"
c[1][3][2] = 1
TextWindow.WriteLine(c)
'0=0=0\=a\;;1=0\=123\;;;1=2=0\=True\;;3=0\=b0\;2\=1\;;;
在上面的转换示例中,我不明白何时反闪烁。
您能帮我了解转换规则吗?
预先感谢。
g.kim
在大多数编程语言中,数组非常有效,并且旨在尽快运行。小基础不是这种情况。实际上,严格来说,小基础并不具有数组结构。数组作为地图存储,其中将键存储为具有匹配值的对。
您通常使用数组:ary [1] = 12
但是您可以很容易地使用它:ary [" cat"] = 12
小基本的第一个版本甚至不支持方括号[]符号。您使用地图对象将信息存储在信息中。对于向后兼容性,地图对象仍在那里。访问它已被包裹在某些句法糖中,以使其更传统。最终结果是非常灵活的,但非常慢。
现在,要回答您的实际问题...
您看到的是写入数组时,是阵列的地图存储。值成对。地图键,相等的符号和关联的地图值以半隆结尾。当您执行多维数组时,想法就嵌套了。对于二维数组,您可以获得第一个索引,相等的符号,第二个索引,斜线,第二个相等符号,然后是关联的值。对于每个添加的索引,您将获得另一个斜线和另一个分号。当您使用非数字索引时,这更容易查看。
a["cat"] = "hat"
a["shark"] = "bait"
TextWindow.WriteLine(a) 'cat=hat;shark=bait;
b["apple"]["orange"] = "fruit"
b["VW"]["BMW"] = "cars"
TextWindow.WriteLine(b) 'apple=orange=fruit;;VW=BMW=cars;;
c["hot"]["medium"]["cold"] = "temps"
c["cheese"]["meat"]["vegies"] = "food"
TextWindow.WriteLine(c) 'hot=medium=cold\=temps\;;;cheese=meat=vegies\=food\;;;
这个想法可以反向。如果要使代码尽可能紧凑,则可以使用字符串加载数组。只需遵循上面详述的模式,然后有六行将六个值加载到六个索引中,您就可以在一行中一次完成所有操作:
d = "work=money;stone=cold;"
TextWindow.WriteLine(d["work"]) 'money
TextWindow.WriteLine(d["stone"]) 'cold