📜  Q语言-列表

📅  最后修改于: 2020-11-03 06:43:58             🧑  作者: Mango


列表是q语言的基本构建块,因此对列表的透彻理解非常重要。列表只是原子(原子元素)和其他列表(一个或多个原子的组)的有序集合。

清单类型

常规列表将其项目括在匹配的括号内,并用分号分隔。例如-

(9;8;7)   or   ("a"; "b"; "c")   or   (-10.0; 3.1415e; `abcd; "r")

如果列表由相同类型的原子组成,则称为统一列表。否则,它被称为常规列表(混合类型)。

计数

我们可以通过计数获得列表中的项目数。

q)l1:(-10.0;3.1415e;`abcd;"r")    / Assigning variable name to general list

q)count l1                        / Calculating number of items in the list l1
4

简单列表的例子

q)h:(1h;2h;255h)                    / Simple Integer List

q)h
1 2 255h

q)f:(123.4567;9876.543;98.7)        / Simple Floating Point List

q)f
123.4567 9876.543 98.7

q)b:(0b;1b;0b;1b;1b)                / Simple Binary Lists

q)b
01011b

q)symbols:(`Life;`Is;`Beautiful)    / Simple Symbols List

q)symbols
`Life`Is`Beautiful

q)chars:("h";"e";"l";"l";"o";" ";"w";"o";"r";"l";"d") 
                                    / Simple char lists and Strings.
q)chars
"hello world"

**注意-char的简单列表称为字符串。

列表包含原子或列表。要创建单个项目列表,我们使用-

q)singleton:enlist 42

q)singleton
,42

要区分原子和等效的单例,请检查其类型的符号。

q)signum type 42
-1i

q)signum type enlist 42
1i