数据类型
前面我们提到了青语言中变量可以绑定任意类型的数据,那么青语言中有哪些数据类型呢。
青语言参考了JavaScript语言,只提供了少量的几种基本数据类型,我们先整体了解一下
空 ;空类型,表示不存在或者值为空
真 ;逻辑类型,表示逻辑真
假 ;逻辑类型,表示逻辑假
0xFF ;二进制类型,表示二进制数据
123 ;这是整数
4.56 ;这是小数
“这是一段字符串” ;用中文双引号括起来的部分是字符串
青语言中提供了6种基本的数据类型,使用这6种基本数据类型,我们就能实现对一切事物的描述。
空类型: 只有一种取值——空,表示不存在或者值为空
逻辑类型: 有两种取值,表示逻辑上的真和假
注意上面的这两种类型使用的是3个特殊的值,并且是中文表示,所以使用时要注意前后留空白
二进制类型:底层是字节数组,表示方式就是0x开头的十六进制表示(请自行了解十六进制表示法)
整数类型和小数类型:表示数字,表示方式就是日常使用的十进制阿拉伯数字
字符串类型:字符串类型是表示能力最强的数据类型,其本质就是通过文字描述事物。青语言中,使用一对中文的双引号“”来标记字符串,要注意中文的双引号是有左右之分的,必须使用匹配的双引号。
字符串本质上是文本,当字符串的内容要表示另一个字符串时,就会发生冲突,所以字符串我们需要处理转义问题,和其他主流语言一样,我们使用反斜杠 \\来表示转义。解析期的逻辑是,在字符串中一旦发现一个 \\ ,会直接跳过其后的一个字符。 首先我们要处理的是字符串结尾的判断,也就是如果一个字符串中要出现一个中文的右双引号”,那么会导致字符串提前结束,这时候我们就需要添加一个转义符,变成 \\” ,这样解析器就会跳过这个引号。青语言在存储字符串信息时会取出这个转义符,所以它表示的字符串里就只剩下一个引号了。
其余的转义字符还有:
\\\\ ;对转义字符进行转义,表示一个 \
\\n ;换行
\\r ;回车
\\t ;制表符
\\f ;换页
\\b ;退格
\\s ;警报
附:
任意类型都可以转换为逻辑值,对应的转换关系为
空 —— 逻辑假
异常 —— 逻辑假
整数、小数 —— 大于0为真,小于等于0为假
字符串 —— 空字符串为假,否则为真
数组 —— 空数组为假,否则为真
其余均为真
`'