天才一秒记住【第一中文网】地址:www.dyzww.cc
个或多个标签,外面被花括号所包围。Nbt标签其实还可以嵌套作为值成为『复合标签』,下面会具体讲到这个东西。
和JSoN文本一样,标签的值也有许多类型,具体的我们到以后再详细了解,这里就先简单介绍一下。
值的数据类型可以粗略分为五种:数组、数值、文本、复合标签和列表。数组以后再讲,现在我们只需要来认识一下剩下的四种。
数值类型,也就是一串数字。一般这一串数字为整型数,比如:
{dimension:10}
但有些标签的值也可以是浮点数,如:
{health:7.8f}
(f在这边代表值类型为单精度浮点数,一般情况下可以省略这些后缀字母,但如果出了问题还是要加上的)
什么是整型和浮点数?简单来说,整型就是整数数据类型,也就是整数;浮点数是一种看起来很像小数的表示方法。其中,后者具有小数点,既能表示整数也能表示小数。比如:
10
10.0
虽然这两个数大小一样,也都是整数。但在计算机眼中,上者是『整型数』,下者是『浮点数』,并不一样。
文本类型,也就是一串文本。和数值不一样的是,文本需要使用英文半角引号将内容包裹起来。如:
{customName:“Arcaea“}
在Java1.14及以上版本中,引号也可以使用半角单引号:
{customName:'Arcaea'}
复合标签类型听起来很高大上。但只要你语文好一点,就会发现它并没有多么高大上。
『复合』的意思是:把两种或几种成分结合起来。所以『复合标签』的意思就是:把多个标签结合起来。在这边,这个标签并不是普通的标签,而是由多个标签组合成的Nbt标签:
{标签名:{标签名:值,标签名:值......}}
也就是说,复合标签本质上,其实就是将一个Nbt标签塞到另一个Nbt标签里面去:
{Riding:{id:“xxxx“,health:20.0f},id:“yyy“}
列表类型常常与复合标签类型结合使用。它长这个样子:
{标签名:[值,值,值,值......]}
列表类型的本质,就是把多个同类型的值组合在一起。比如:
{Friends:[“xiaohong“,“xiaoming“,“xiaoZhang“]}
这里Friends标签的值就是三个文本组成的列表。
刚才说过列表类型常常与复合标签类型结合使用,具体的使用法是这样子的:
{标签:[{标签},{标签},{标签}]}
也就是把多个Nbt标签(复合标签)组合成一个列表。在以后我们会经常性地遇到这样的用法。
这就是Nbt,或者说,是mojang专门研发出来能够给人看的:SNbt(Stringified Nbt),也就是『字符串化的二进制命名标签』。而真正的Nbt,其实是树状结构,和上面的SNbt有很大差别。只不过你不用担心怎么区分Nbt和SNbt,因为干嘛要管呢?在大多数语境下,大家是不会特意区分Nbt和SNbt的,一般都统称为Nbt。
现在你能够看懂Nbt了吧?你可以尝试一下下面的这串,看看能否看懂。
{Elements:[{Name:“pyro“,Id:1},{Name:“hydro“,Id:2},{Name:“Anemo“,
本章未完,请点击下一章继续阅读!若浏览器显示没有新章节了,请尝试点击右上角↗️或右下角↘️的菜单,退出阅读模式即可,谢谢!