在搞清楚战利品表到底是什么东西,我们不妨先搞清楚JSON到底是什么。
——第一段:什么是JSON?
JSON的全称是JavaScript Object Notation,翻译过来就是:JavaScript对象表示法。但我相信此刻读到这里的读者们会:
一脸懵逼两脸懵逼四脸懵逼八脸懵逼百脸懵逼千脸懵逼........
但这本书的读者好像也没有一千人啊?一百人总是有的。
回到正题,JavaScript听说过吧?
什么?你没听说过?
玩《Minecraft》需要加什么?
A.加水 B.加砖 C.加瓦 D.加岩浆
答案是C!加瓦(Java)啊。
Java的全称就JavaScript,也就是Java计算机语言。
所以,JSON就是JAVA的一部分。这也符合Minecraft是用Java开发的这个条件。
等等,JAVA的全称就是JAVA,也就是JAVA计算机语........
(好像有什么不对的地方)
哎,你们有没有发现,JAVA的全称不是JavaScript哎,就是JAVA哎。
这说明什么?JAVA和JavaScript不是一个东西。
不信你打开百度百科去搜JAVA。
实际上,JavaScript,简称JS。
JAVA,简称JAVA,所以JAVA和JavaScript是不一样的。
所以为何JavaScriot突出的是JS,JAVA则全部突出。
(当然你也可以把JAVA写成Java,那样Java的简称就变成J了)
那么问题来了,Minecraft是用JAVA写的,还是用Java(JavaScript)写的?
肯定是JAVA啦。
(好像基岩版是用C++哎。)
所以,JSON和JAVA没有半毛钱的关系,倒是有半分钱的关系。
为何?
中间商(Minecraft),补关系。
那么既然知道了JSON是Java的一部分,那么JSON一般是来干啥的?
JSON一般用来存储数据,数据会存储成表格的格式。所以,用JSON存储的表格,我们叫它为:JSON表。
战利品表也就是JSON表,它是使用JSON存储的。
在代码里,JSON长这个模样(比如我们要存储一个玩家的数据):
lnt
data ={
空空
空空name:'我是玩家',
空空lvl: 27,
空空l: 19972,
空空RMB: 72541
空空
那么这样子列出来的表格是这样的(建议在大脑清醒的情况下看):
name | lvl | l | RM
我是玩家|27|19972|72541
使用JSON,可以更方便地存储数据。
等等,我们不是在讲Minecraft吗?咋扯到编程上面去了?
回到正题。
我们已经了解了JSON是什么,是干啥的,最后我们要知道JSON在Minecraft中是怎么样的。
——第二段:在Minecraft中JSON是怎么样的?
相信大家家里都有一台电脑吧?什么,你家里没有电脑?手机总该有的吧?
现在,不管是Mac、Windows,还是WinPhone或者是IOS、安卓,都可以拿起来,打开手机的文件。
当然,个人推荐你使用Mac或者是Windows也或者是安卓系统,IOS的文件管理器比较不适合。
我相信各位没有使用WinPhone在看这本书的吧?况且起点或者是QQ读书也没有WinPhone版。
(好像可以通过浏览器看哎)
现在,文件最开始,是不是只有一个存储盘?当然电脑是有很多个盘的。
然后,在这个盘下面,有很多的文件,对吧?
什么?没有?你改成系统盘试试?或者是你把插在电脑上的空U盘拔掉,也行。
这些文件都是磁盘下面的一级,也就是第二层。
现在,请打开系统的文件夹,里面是不是有更多的文件夹?
此刻我们已经来到了文件夹里的文件夹,也就是第三层。
现在,请选择大小最大的文件夹,打开它。
此刻我们已经来到了文件夹内的文件夹内的文件夹,里面是不是有更多的文件夹?
如果有,请继续打开它。
然后,我们就来到了文件夹内的文件夹内的文件夹内的文件夹,里面是不是还有文件夹?
如果有,也可以停了。当然如果你还想继续套娃,可以,别把你的存储溢到你手上就可以了。
那么,上面这些,跟JSON有什么关系呢?
其实,Minecraft中使用JSON,就像是打开文件夹找文件一样。每个文件都有自己的专属路径,比如:
C:/baidudownload/
就是C盘下的baidudownload文件夹下的Minecraft安装包。
如果变成Minecraft中的JSON的样子会是:
{C:[“baidudownload“:{“name“:“Minecraft“,“type“:“exe“}]}
如果单看JSON,估计80%的人都会被立马淘汰掉。
但如果像这样子理解的话,就立马简单了。
如果你连在文件夹里找文件都不会的话,那么你现在就可以跳过这本书所有关于JSON以及NBT的内容了。
其实,在Minecraft,不管是JSON,还是NBT,它们都是这种格式的,也就是像这样的倒金字塔。
这是一个很重要的知识点,现在请你拿出你的小本本,然后拿出你的笔,记录下这个伟大的知识点。
当然如果你想省事的话截个屏就可以了。
——第三段:JSON的五种数据类型。
你以为这就结束了?
别忘了,古人以3为重,不然为什么本章还要分段?
很简单,因为本章可以分成3大部分。
而最后这一部分,我们就来研究:
JSON的5种数据类型
我们之前在了解并使用指令的时候,知道了指令一般有3种数据类型:
字符串(string)——“idieha82isud“
数值(number)——
布尔值(boolean)——false true或1、0
然鹅,到了JSON,这个3必须要变成5。
因为,JSON还有两种数据类型:
对象(object)和数组(a
ay)
首先,对象到底是什么?
我们不妨把上一段的作者自创JSON表拿过来:
{C:[“baidudownload“:{“name“:“Minecraft“,“type“:“exe“}]}
现在,让我们用全新的方式全新的角度去看待它。
作者在表达时,把Minecraft和exe拆开,因为Minecraft和exe是完全不一样的。
Minecraft是这个文件的名字,也就是:name。
exe是这个文件的类型,也就是:type。
而这两者相加,才等于这个文件。
而这种表达方式,就是:对象(object)。
对象可以包含其他的数据类型,比如Minecraft和exe在输入时都采用了字符串的形式。
当然你也可以在对象里包括对象,用专业的语言来讲,这种叫做:套对象[滑稽]。
那么对象搞清楚了(等等,这句话好像有别的意思),就剩下数组了。
在很久很久以前,大概是21世纪的某个白天,地球上的一个工作室内,五十几名员工正在对它们做的一款游戏进行一次大更新。
(以下对话纯属作者想象,但结果是真实的)
一位有着大胡子的中年人边敲键盘边对着另一个人道:“jeb,指令方面的目标选择器得要改一下,这种简略的写法已经不能再用了。”
而那位被叫做jeb的人正在敲键盘:“是要改了,不然越到后面越麻烦。”
而那位大胡子看了正在狂敲键盘的jeb一眼,比了个OK的手势,就继续对着上面有无数个代码的电脑屏幕敲键盘了。
通过上面的对话,我们知道目标选择器的一个简略的写法不能用了。
但是这种简略的写法到底是什么呢?
比如:
[7,2,4,1
这样子,如果不知内情的玩家可能搞不清楚这到底是什么,其实就是xyz以及r省去了字母留下了数字。
虽然现在已经不能这样写了,但是我们可以确定,这在JSON中,是一种数据类型。
是什么呢?数组。
数组就像上面的目标选择器一样,是由不同类型的数据组合在一起的。
但是数组的作用不是像上面的目标选择器一样,它的作用是用来做多选题。
比如,如果你想要指定6个玩家的名字,该怎么办?
此刻就得:
{“players“:[“我是玩家“,“我也是玩家“,“我跟他们一样也是玩家“,“我当然也是玩家“,“哎我也是玩家“,“我不是玩家(滑稽)“]}
这样子使用数组了。
——结束语
OK这一章就到这里了,鉴于本章写了将近2300字,能不能投个票,点个收藏再点个分享素质三连一下啊?
不得不说这一卷真的是太神奇了,平均每一章节的字数都达到了历史新高,就是更新慢了点。
——注意事项
1.请各位读者注意了,由于平台的特殊性,导致符号都会变成中文符号,作者在码字的时候都是使用英文符号的,而且指令也只认英文符号,不推荐大家直接复制。如果输入了指令但报错,有一点可能就是你使用了中文的符号(当然中文是没问题的)。
2.安卓平台的读者也要注意一点,你们在看这本书的时候,显示格式的地方会经常出现:>这种乱码,其实这是由于安卓平台无法识别这种符号才导致的,建议使用苹果手机。当然作者没有被乔布斯要求向你们推广苹果啊。
阅读Minecraft指令手册最新章节 请关注热血小说网(www.oaksh.cn)