数据类型 data-types

从技术上讲,常量始终包含数据类型。 在文本表达式中,我们仅指定值。 可以从值推断数据类型(例如字符串、整数、小数等)。 对于日期时间等具体情况,我们使用专门的函数进行表示。

以下各部分提供了有关不同数据类型表达式及其表示方式的信息。

字符串 string

描述

常用字符序列。 除来自环境的隐式大小(例如可用内存量)外,它没有任何特定大小。

JSON格式:字符串

序列化格式:UTF-8

文本呈现

"<value>"
'<value>'

示例

"hello world"
'hello world'

整数 integer

描述

从–263到263-1的整数值。

JSON格式:数字

文本呈现

<integer value>

示例

42

小数 decimal

描述

十进制数。 它表示一个浮动值:

  • 双精度型的最大正有限值,(2-2 -52)x2 1023
  • double类型的最小正正规值,2-1022
  • double类型的最小正非零值,2 p-1074

JSON格式:数字

序列化格式:使用“。” 作为小数分隔符。

文本呈现

<integer value>.<integer value>

示例

3.14

布尔 boolean

描述

布尔值写入小写: true或false

JSON格式:布尔型

文本呈现

true
false

示例

true

dateOnly  date-only

描述

表示不带时区的日期,以年 — 月 — 日形式查看。

它是日期的描述,用于生日。

json格式:字符串。

格式为:YYYY-MM-DD (ISO-8601),例如:“2021-03-11”。

它可以封装在toDateOnly函数中。

它使用DateTimeFormatter ISO_LOCAL_DATE_TIME反序列化和序列化该值。 了解详情

文本呈现

date("<dateOnly in ISO-8601 format>")

示例

date("2021-02-19")

dateTimeOnly  date-time-only

描述

表示不带时区的日期时间,它以年 — 月 — 日 — 小时 — 分钟 — 秒 — 毫秒形式查看。

json格式:字符串。

它不存储或表示时区。 相反,它是对日期的描述(用于生日),与墙上时钟上显示的当地时间相结合。

如果没有偏移或时区等附加信息,它不能表示时间线上的瞬间。

它可以封装在toDateTimeOnly函数中。

序列化格式:ISO-8601扩展偏移日期时间格式。

它使用DateTimeFormatter ISO_LOCAL_DATE_TIME反序列化和序列化该值。 了解更多

文本呈现

date("<dateTimeOnly in ISO-8601 format>")

示例

date("2024-02-19T00.00.000")
date("2024-02-19T00.00")

dateTime date-time

描述

日期时间常量,也会考虑时区。 它表示一个日期时间,带有与UTC的偏移。

它可以被视为带有偏移量附加信息的即时时刻。 这是一种在世界特定地点表示特定“时刻”的方式。

json格式:字符串。

它可以封装在toDateTime函数中。

序列化格式:ISO-8601扩展偏移日期时间格式。

它使用DateTimeFormatter ISO_OFFSET_DATE_TIME反序列化和序列化值。 了解更多

您还可以传递一个传递epoch值的整数。 阅读更多

时区可以通过偏移或时区代码指定(例如:欧洲/巴黎,Z — 表示UTC)。

文本呈现

toDateTime("<dateTime in ISO-8601 format>")
date("<dateTime in ISO-8601 format>")
toDateTime(<integer value of an epoch in milliseconds>)

示例

date("2024-02-19T00.00.000Z")
toDateTime("1977-04-22T06:00:00Z")
toDateTime("2023-12-03T15:15:30Z")
toDateTime("2023-12-03T15:15:30.123Z")
toDateTime("2023-12-03T15:15:30.123+02:00")
toDateTime("2023-12-03T15:15:30.123-00:20")
toDateTime(1560762190189)

持续时间 duration

描述

它表示基于时间的时间量,如“34.5秒”。 它以毫秒为单位对时间量或时间量建模。

支持的临时单位为:毫秒、秒、分钟、小时、天,其中天等于24小时。 不支持年份和月份,因为它们不是固定时间。

json格式:字符串。

必须将其封装在toDuration函数中。

序列化格式:要反序列化时区ID,它使用java函数java.time。

Duration.parse:可接受的格式基于ISO-8601持续时间格式PnDTnHnMn.nS,天数被认为刚好是24小时。 了解更多

文本呈现

toDuration("<duration in ISO-8601 format>")
toDuration(<duration in milliseconds>)

示例

toDuration("PT5S") -- parses as 5 seconds
toDuration(500) -- parses as 500ms
toDuration("PT20.345S") -- parses as "20.345 seconds"
toDuration("PT15M") -- parses as "15 minutes" (where a minute is 60 seconds)
toDuration("PT10H")  -- parses as "10 hours" (where an hour is 3600 seconds)
toDuration("P2D") -- parses as "2 days" (where a day is 24 hours or 86400 seconds)
toDuration("P2DT3H4M") -- parses as "2 days, 3 hours and 4 minutes"
toDuration("P-6H3M") -- parses as "-6 hours and +3 minutes"
toDuration("-P6H3M") -- parses as "-6 hours and -3 minutes"
toDuration("-P-6H+3M") -- parses as "+6 hours and -3 minutes"

list list

描述

使用方括号作为分隔符的表达式逗号分隔列表。

不支持多态性,因此列表中包含的所有表达式都应具有相同的类型。

文本呈现

[<expression>, <expression>, ... ]

示例

["value1","value2"]
[3,5]
[toDuration(500),toDuration(800)]
recommendation-more-help
b22c9c5d-9208-48f4-b874-1cefb8df4d76