第189章 ,/.

文本类型,也就是一串文本。和数值不一样的是,文本需要使用英文半角引号将内容包裹起来。如:

{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“,Id:3},{Name:“Electro“,Id:4},{Name:“Dendro“,Id:5},{Name:“Cryo“,Id:6},{Name:“Geo“,Id:7}]}

本章就到这里了。

(其实,标签的本质,和JSON的组件差不多,都是一个『键-值对』)