龙空技术网

[按键基础][ ] { } ( ) 这三种括号表示的意义有啥不同,json读取方法

按键精灵郭立员 150

前言:

而今姐妹们对“print数组方括号”可能比较关怀,姐妹们都需要分析一些“print数组方括号”的相关内容。那么小编在网上网罗了一些有关“print数组方括号””的相关资讯,希望同学们能喜欢,咱们一起来学习一下吧!

大家好,我是公众号3分钟学堂的郭立员~

前言

今天他们问三种括号的区别是啥?

我想了想可能一两句话说不清楚,所以写这篇文章讲一讲!

一、3种括号有啥相同之处吗?

它们之间相同之处不多,主要是和数组(表)相关,稍后就是针对方面进行讲解。

先来说说数组(表)的类型:

①索引类型,最初学的数组就是索引类型,也就是有数组下标

dim 数组=Array("a","b","c")

②键值对类型,包含键名和键值

dim 数组={"姓名":"郭立员"}TracePrint 数组["姓名"]

通过下面图例,让大家知道什么是键名,什么是键值

二、括号的介绍

①小括号( )的用处

小括号的最基本用处就是用于存放命令(函数)的参数。

在数组中的作用是存放数组下标。

TracePrint 数组(0)

小括号只有读取数组的作用,不能定义数组

②方括号[ ]的作用

方括号的作用只和数组相关

定义索引类型的数组:(隐形定义)

["a","b","c"]

这种写法不能在按键中直接定义,只存在json格式中,比如把这个定义存入到文本中,然后读取文本,把返回值再做个json转table操作,就变成索引类型数组了,这种定义在其他编程语言比较常见。

读取数组,可以是读索引类型数组,也可以读键值对类型数组

TracePrint 数组[1]TracePrint 数组["姓名"]

③花括号{ }的作用

只有定义数组,不能读取数组

定义数组可以定义索引类型,也可以定义键值对类型。

dim 数组={"a","b","c"}   //索引类型dim 数组={"姓名":"郭立员"}  //键值对类型

总结一下作用:

小括号:只能读索引类型数组

方括号:可以定义数组,也可以读取数组,定义数组只是索引类型,而且是隐形的。

花括号:只能定义数组,索引类型和键值类型都可以定义。

看到3种括号有相似的作用,我来比较一下:

读取索引类型数组:小括号和方括号都可以,不同之处是起始下标,小括号从0开始,方括号从1开始。

TracePrint 数组(0)TracePrint 数组[1]

对于多维数组的写法:以二维数组为例

TracePrint 数组(0,0)TracePrint 数组[1][1]

定义数组,以json格式为例

方括号:定义数组类型

花括号:定义键值对类型

通过括号的不同,就能知道括号是什么类型的数组,方便区分。

复杂的数组会把索引类型和键值对类型的数组混合在一起。

以索引数组包含键值对为例,标准定义的方式

[{"姓名":"郭立员"},{"公众号":"3分钟学堂"},{"微信":"xiaomu86119"}]

由于按键不支持[]的定义,所以用花括号替换方括号,代码如下:

dim 数组={{"姓名":"郭立员"},{"公众号":"3分钟学堂"},{"微信":"xiaomu86119"}}TracePrint 数组[1]["姓名"]

三、多层级数组的读取

第一步:分析要读取的值在哪一层级,我个人习惯是使用在线json格式化工具

举个例子,如图所示,要获取温度值21:

通过反推法,分析值21对应的层级关系:

从后往前:

21是temperature的键值:

先写上

["temperature"]

上一级是now

["now"]["temperature"]

在往上推一级

注意这里上一级不是weather,而是索引,这里是数组里第一个所以索引值是[1]

[1]["now"]["temperature"]

继续上一级

["weather"][1]["now"]["temperature"]

继续反推,发现到最顶级了,补上数组名称

TracePrint 数组["weather"][1]["now"]["temperature"]

这样一个完整的读取就完成了。

=正文完=

标签: #print数组方括号 #c语言括号作用 #c语言小括号的作用