类型转换

在 nGQL 中,类型转换分为隐式转换和显式转换。

隐式转换

在表达式中,兼容类型间可自动完成类型转换:

  1. 以下类型均可隐式转换至 bool 类型:

    • 当且仅当字符串长度为 0 时,可被隐式转换为 false,否则为 true
    • 当且仅当整型数值为 0 时,可被隐式转换为 false,否则为 true
    • 当且仅当浮点类型数值为 0.0 时,可被隐式转换为 false,否则为 true
  2. int 类型可隐式转换为 double 类型

显式转换

除隐式类型转换外,在符合语义的情况下,还可以使用显式类型转换。语法规则类似 C 语言:(type_name)expression 。例如,YIELD length((string)(123)), (int)"123" + 1 执行结果为 3, 124YIELD (int)(TRUE) 执行结果为 1YIELD (int)("12ab3") 则会转换失败。