第一百三十九章 真正深入了解nbt-5

好消息!我们已经只剩下“数组”这个数据类型了!

[字符]

字符串(string)

[数值]

{整形}

字节型(byte:b)

短整型(short:s)

整型(int:i)

长整型(long:l)

{浮点型(小数)}

单精度浮点型(float:f)

双精度浮点型(double:d)

[数据]

复合标签(pound)

列表(list)

[数组]

字节型数组(byte array:[b])

整型数组(int array:[i])

长整型数组(long array:[l])

看上面的列表,我们就可以知道,数组类型一共有三个:

字节型数组(byte array:[b])

整型数组(int array:[i])

长整型数组(long array:[l])

当然,在了解之前,我们得先来了解一下“数组”是什么意思。

其实很容易理解:数组,就是指几个数字组合在一起。

这就简单了,加上这三个名字前分别带有“字节型、“整型”、“长整型”,我们就知道了这三个数组到底是个什么鬼东西:

字节型数组:几个字节型值组合在一起。

整型数组:几个整型值组合在一起。

长整型数组:几个长整型值组合在一起。

三个数组的基本就是这样。这时候,我们就可以进入下一阶段了:

它们三到底长啥样?zuqi.org 葡萄小说网

我们知道,列表数据类型的作用就是将几个数据类型相同的数据集合在一起,如:

{time:[2020,12,21]}

而数组,刚才上面讲过了:几个数字组合在一起。

我们可以把几个数字看成“几个数据类型相同的数值”,那么就变成了:

将几个数据类型相同的数值集合在一起

对比一下,你就会发现:数组不就是数据类型为字节型、整型或长整型的列表嘛!

所以我们就可以大胆猜测,数组是长这样子的:

[<数值1>,<数值2>,<数值3>.......](如:[2020,12,21])

猜的可以,但并不是全部的真相。

我们在讲数值数据类型时,经常提到四个字:类型字母。而现在我们讲到了集数值和列表为一体的数组,那是不是也有类型字母呢?

答案是肯定的。所以实际上的数组格式,是这样子的:

[<类型字母>;<数值1>,<数值2>,<数值3>.......]

举个例子,比如数据类型为字节型的数组:

[b;11,45,14]

不难发现,决定类型字母的就是该数组的数据类型。只不过之前我并没有提到整形的类型字母,但相信大家不难猜出来,因为:

整型(int:i)

所以整形的类型字母就是:i。

按理说这一章到这里也就完了,但如果有细心的人,或许会提出一个疑问:

那么后面的数值需要填上类型字母吗?

答案很简单:不用。

理由也很简单:分配律。

现在我们来举些例子:

一、{time:[i;2020,12,27]}(数据类型为整形)

二、{covid-19:{america:[l;,,,]},time:[i;2020,12,27,21,44,54]}(第一个数据类型为长整型,第二个数据类型为整形)

三、{options:[b;1,1,0,0,1,1,1,1,1,0,0,1,0,1]}(数据类型为字节型)

ok本章就到这里了。

......

......

......

哦对了,请记住一点:数组里的类型字母后面那个符号是分号(;)而不是冒号(:)!

上一章目录+书架下一章