Q 语言初学者系列:(2)基本数据类型
2016-11-11 09:27
387 查看
明:本系列文章全部参考自官方教程,由于缺乏中文资料而且本人E文实在太菜
,对于E文较好的朋友可以直接通过下面的链接访问官方网站提供的教程,
欢迎大家一起学习讨论。
hhttps://code.kx.com/trac/wiki/QforMortals2/contents
用户名跟密码为anonymous
转自:http://blog.csdn.net/kraussyin/article/details/47036343
Q语言跟C#、Java还有SQL基本数据类型的比较
各种数据类型的信息
下面继续针对各种数据类型的讲解:
1. 整数数据(Integer Data)
整数类型跟其它编程语言的描述基本相同。
int
int占用4个字节的内存空间,存储了一个整型的数字。
short
short 占用两个字节的内存空间,只能存储一个较小的整数,以”h”结尾。
e.g.
q)b:-123h
q)b
-123h
long
long 占用了8个字节的内存空间,可以容纳较大的整数,以”f”结尾。
e.g.
q)c:1234567890j
q)c
1234567890j
2. 浮点数据(Floating Point Data)
支持科学记数法。
float
可以保证至少15位小数的的精度,以”f”结尾。相当于JAVA或C#里面的double
real
可以保证至少6位小数的的精度,以”e”结尾。相当于JAVA或C#里面的float
3. 二进制数据(Binary Data)
boolean
当条件为真是,值为1b, 当条件为假时,值为0b
e.g.
q)1=1
1b
q)1=0
0b
byte
4. 字符数据(Char Data)
char
表示一个字符使用的是引号。
e.g.
q)ch:”q”
q)ch
“q”
还可以使用”\”做为转义字符,这跟C#和JAVA是一样的。
q)ch:"\"" / double-quote
q)ch / console also displays the escape "\""
q)ch:"\\" / back-slash
q)ch:"\n" / newline
q)ch:"\r" / return
q)ch:"\t" / horizontal tab
5. symbol
symbol是由”`”符号开头的一串字符,但symbol并不等同于字符串。
那么如何才能让一个symbol包含空格等特殊符号呢?答案就是通过字符串,下面的例子并说明:
e.g.
q)`$"A symbol with `backtick"
`A symbol with `backtick
6. 时间类型
date
date类型的值的定义格式应该为yyyy.mm.dd,月份跟日期不够两位数需要在前面加0
e.g.
q)d:2008.07.03
q)d
2008.07.03
还可以通过d.year, d.mm, d.dd 获取到年、月跟日期,d.month可以得到month的对象。
time
time 类型的值的定义格式应该为hh:mm:ss.uu,同样需要补0的地方还是要补上
e.g.
q)t:16:30.000
q)t
16:30.000
可以通过t.hh, t.mm, t.ss 获取到小时、分钟跟秒,t.minute 跟 t.second 得取到minute跟second的对象。
datetime
datetime 的格式是由date跟time中间通过“T”隔开的标准格式
e.g.
q)dt:2006.07.04T09:04:59:000
q)dt
2006.07.04T09:04:59:000
Datetime具备了date跟time所有的属性外还可以通过dt.date跟dt.time得到date跟time的对象。
month
month 的格式为yyyy.mm,而且需要在末尾追回一个字符“m”
e.g.
q) mon:2006.07m
q)mon
2006.07m
minute
minute 的格式为hh:mm
second
second 的格式为 hh:mm:ss
7. 无穷大 跟 非数字 类型(Infinities and NaN)
下表列出了各种类型的无穷大的表示法:
8. 空值类型(Null Values)
下表列出了各种类型的空值表示法:
顶
0
,对于E文较好的朋友可以直接通过下面的链接访问官方网站提供的教程,
欢迎大家一起学习讨论。
hhttps://code.kx.com/trac/wiki/QforMortals2/contents
用户名跟密码为anonymous
转自:http://blog.csdn.net/kraussyin/article/details/47036343
Q语言跟C#、Java还有SQL基本数据类型的比较
Q | SQL | Java | C# |
boolean | boolean | Boolean | Boolean |
byte | byte | Byte | Byte |
short | smallint | Short | Int16 |
int | int | Integer | Int32 |
long | bigint | Long | Int64 |
real | real | Float | Single |
float | float | Double | Double |
char | char(1) | Character | Char |
symbol | varchar | (String) | (String) |
date | date | Date | |
datetime | datetime | Timestamp | !DateTime |
minute | |||
second | |||
time | time | Time | !TimeSpan |
enumeration |
各种数据类型的信息
type | size | char type | num type | notation | null value |
boolean | 1 | b | 1 | 1b | 0b |
byte | 1 | x | 4 | 0x26 | 0x00 |
short | 2 | h | 5 | 42h | 0Nh |
int | 4 | i | 6 | 42 | 0N |
long | 8 | j | 7 | 42j | 0Nj |
real | 4 | e | 8 | 4.2e | 0Ne |
float | 8 | f | 9 | 4.2 | 0n |
char | 1 | c | 10 | "z" | " " |
symbol | * | s | 11 | ‘zaphod | ` |
month | 4 | m | 13 | 2006.07m | 0Nm |
date | 4 | d | 14 | 2006.07.21 | 0Nd |
datetime | 4 | z | 15 | 2006.07.21T09:13:39 | 0Nz |
minute | 4 | u | 17 | 23:59 | 0Nu |
second | 4 | v | 18 | 23:59:59 | 0Nv |
time | 4 | t | 19 | 09:01:02:042 | 0Nt |
enumeration | * | `u$v | |||
dictionary | 99 | `a`b`c!!10 20 30 | |||
table | 98 | ([] c1:ab`c; c2:10 20 30) |
下面继续针对各种数据类型的讲解:
1. 整数数据(Integer Data)
整数类型跟其它编程语言的描述基本相同。
int
int占用4个字节的内存空间,存储了一个整型的数字。
short
short 占用两个字节的内存空间,只能存储一个较小的整数,以”h”结尾。
e.g.
q)b:-123h
q)b
-123h
long
long 占用了8个字节的内存空间,可以容纳较大的整数,以”f”结尾。
e.g.
q)c:1234567890j
q)c
1234567890j
2. 浮点数据(Floating Point Data)
支持科学记数法。
float
可以保证至少15位小数的的精度,以”f”结尾。相当于JAVA或C#里面的double
real
可以保证至少6位小数的的精度,以”e”结尾。相当于JAVA或C#里面的float
3. 二进制数据(Binary Data)
boolean
当条件为真是,值为1b, 当条件为假时,值为0b
e.g.
q)1=1
1b
q)1=0
0b
byte
4. 字符数据(Char Data)
char
表示一个字符使用的是引号。
e.g.
q)ch:”q”
q)ch
“q”
还可以使用”\”做为转义字符,这跟C#和JAVA是一样的。
q)ch:"\"" / double-quote
q)ch / console also displays the escape "\""
q)ch:"\\" / back-slash
q)ch:"\n" / newline
q)ch:"\r" / return
q)ch:"\t" / horizontal tab
5. symbol
symbol是由”`”符号开头的一串字符,但symbol并不等同于字符串。
那么如何才能让一个symbol包含空格等特殊符号呢?答案就是通过字符串,下面的例子并说明:
e.g.
q)`$"A symbol with `backtick"
`A symbol with `backtick
6. 时间类型
date
date类型的值的定义格式应该为yyyy.mm.dd,月份跟日期不够两位数需要在前面加0
e.g.
q)d:2008.07.03
q)d
2008.07.03
还可以通过d.year, d.mm, d.dd 获取到年、月跟日期,d.month可以得到month的对象。
time
time 类型的值的定义格式应该为hh:mm:ss.uu,同样需要补0的地方还是要补上
e.g.
q)t:16:30.000
q)t
16:30.000
可以通过t.hh, t.mm, t.ss 获取到小时、分钟跟秒,t.minute 跟 t.second 得取到minute跟second的对象。
datetime
datetime 的格式是由date跟time中间通过“T”隔开的标准格式
e.g.
q)dt:2006.07.04T09:04:59:000
q)dt
2006.07.04T09:04:59:000
Datetime具备了date跟time所有的属性外还可以通过dt.date跟dt.time得到date跟time的对象。
month
month 的格式为yyyy.mm,而且需要在末尾追回一个字符“m”
e.g.
q) mon:2006.07m
q)mon
2006.07m
minute
minute 的格式为hh:mm
second
second 的格式为 hh:mm:ss
7. 无穷大 跟 非数字 类型(Infinities and NaN)
下表列出了各种类型的无穷大的表示法:
Token | Value |
0w | Positive float infinity |
-0w | Negative float infinity |
0W | Positive int infinity |
-0W | Negative int infinity |
0Wh | Positive short infinity |
-0Wh | Negative short infinity |
0Wj | Positive long infinity |
-0Wj | Negative long infinity |
0Wd | Positive date infinity |
-0Wd | Negative date infinity |
0Wt | Positive time infinity |
-0Wt | Negative time infinity |
0Wz | Positive datetime infinity |
-0Wz | Negative datetime infinity |
0n | NaN, or not a number |
下表列出了各种类型的空值表示法:
type | null |
boolean | 0b |
byte | 0x00 |
short | 0Nh |
int | 0N |
long | 0Nj |
real | 0Ne |
float | 0n |
char | " " |
sym | ` |
month | 0Nm |
date | 0Nd |
datetime | 0Nz |
minute | 0Nu |
second | 0Nv |
time | 0Nt |
顶
0
相关文章推荐
- Q 语言初学者系列:(2)基本数据类型
- Q 语言初学者系列:(2)基本数据类型
- javaSE_8系列博客——Java语言的特性(二)--高级语言的基础知识(3)-- 基本数据类型的默认值
- Java语言系列03——基本数据类型
- Java第一课 Java的一些基本概念,Java的起源、为什么我们要学习Java语言,Java跨平台原理剖析;Java环境变量的配置,初学者常犯的问题,Java语言的基本数据类型和Java的语句。
- 编译器定义的C/C++语言各种基本数据类型的取值范围
- 汇编语言---基本数据类型
- C语言基础知识总结(1)-基本数据类型
- 【C/C++语言入门篇】-- 基本数据类型
- 汇编语言---基本数据类型
- 4.Java语言8中基本数据类型
- C/C++开发语言系列之16---C++不同类型数据间的转换
- 【C/C++语言入门篇】-- 基本数据类型
- JAVA API系列----基本数据类型的对象包装类
- C语言数据基本类型——20120705苏嵌实训第四天
- JAVA基本数据类型与其他语言数据类型之间的转换方法
- 【C/C++语言入门篇】-- 基本数据类型
- java,c,c++ 语言之间基本数据类型的比较
- C语言基础字符,数据类型整理(适合初学者查看)
- JavaScript语法入门系列(三) 基本数据类型及其对应对象类型