Datatyper :headding-anchor:concept_gp3_rj5_dgb

Tekniskt sett innehåller en konstant alltid en datatyp. I det litterala uttrycket anger vi bara värdet. Datatypen kan härledas från värdet (t.ex. sträng, heltal, decimal). I särskilda fall, till exempel datum och tid, använder vi dedikerade funktioner för representationen.

Avsnitten nedan innehåller information om de olika datatypsuttrycken och hur de återges.

string :headding-anchor:string

Beskrivning

Vanlig teckensekvens. Den har ingen specifik storlek förutom den som kommer från miljön, till exempel mängden tillgängligt minne.

JSON-format: String

Serialiseringsformat: UTF-8

Litteral representation

"<value>"
'<value>'

Exempel

"hello world"
'hello world'

heltal :headding-anchor:integer

Beskrivning

Heltalsvärde från -2^63 till 2^63-1.

JSON-format: Number

Litteral representation

<integer value>

Exempel

42

decimal :headding-anchor:decimal

Beskrivning

Decimaltal. Det representerar ett flytande värde:

  • det största positiva, ändliga värdet av typen double, (2-2 -52)x2 1023
  • minsta positiva normalvärde av typen double, 2-1022
  • minsta positiva värde som inte är noll av typen double, 2 p-1074

JSON-format: Number

Serialiseringsformat: använder . som decimalavgränsare.

Litteral representation

<integer value>.<integer value>

Exempel

3.14

boolesk :headding-anchor:boolean

Beskrivning

Booleskt värde skrivet med gemener: true eller false

JSON-format: Boolean

Litteral representation

true
false

Exempel

true

dateOnly  :headding-anchor:date-only

Beskrivning

Representerar endast ett datum utan tidszon, vilket visas som en dag i månaden.

Det är en beskrivning av datumet, som används för födelsedagar.

JSON-format: String.

Formatet är: YYY-MM-DD (ISO-8601), t.ex. "2021-03-11".

Den kan kapslas in i en toDateOnly-funktion.

Det använder DateTimeFormatter ISO_LOCAL_DATE_TIME för att avserialisera och serialisera värdet. Läs mer

Litteral representation

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

Exempel

date("2021-02-19")

dateTimeOnly  :headding-anchor:date-time-only

Beskrivning

Representerar en datumtid utan tidszon, som visas som en millisekund för år-månad-timme-minut-sekund-millisekund.

JSON-format: String.

Den lagrar inte eller representerar en tidszon. I stället är det en beskrivning av datumet, som används för födelsedagar, kombinerat med lokal tid enligt en väggklocka.

Det kan inte representera en instans på tidslinjen utan ytterligare information som en förskjutning eller tidszon.

Den kan kapslas in i en toDateTimeOnly-funktion.

Serialiseringsformat: ISO-8601 utökat förskjutningsformat för datum och tid.

Det använder DateTimeFormatter ISO_LOCAL_DATE_TIME för att avserialisera och serialisera värdet. Läs mer

Litteral representation

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

Exempel

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

dateTime :headding-anchor:date-time

Beskrivning

Datumtidskonstant som även beaktar tidszon. Den representerar ett datum/tid med en förskjutning från UTC.

Den kan visas som ett ögonblick i tid med ytterligare information om förskjutningen. Det är ett sätt att representera ett specifikt "ögonblick" på en viss plats i världen.

JSON-format: String.

Den kan kapslas in i en toDateTime-funktion.

Serialiseringsformat: ISO-8601 utökat förskjutningsformat för datum och tid.

Det använder DateTimeFormatter ISO_OFFSET_DATE_TIME för att avserialisera och serialisera värdet. Läs mer

Du kan också skicka ett heltal som skickar ett epokvärde. Läs mer

Tidszonen kan anges med en förskjutning eller en tidszonskod (exempel: Europa/Paris, Z - betyder UTC).

Litteral representation

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

Exempel

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

varaktighet :headding-anchor:duration

Beskrivning

Den representerar en tidsbaserad tidsmängd, till exempel "34,5 sekunder". Den modellerar en kvantitet eller tid i millisekunder.

De tidsenheter som stöds är: millisekunder, sekunder, minuter, timmar och dagar där en dag motsvarar 24 timmar. År och månader stöds inte eftersom de inte är en fast tidsmängd.

JSON-format: String.

Den måste kapslas in i en toDuration-funktion.

Serialiseringsformat: Om du vill deserialisera ett tidszons-ID använder du Java-funktionen java.time.

Duration.parse: De format som accepteras baseras på varaktighetsformatet PnDTnHnMn.nS enligt ISO-8601 med dagar som anses vara exakt 24 timmar. Läs mer

Litteral representation

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

Exempel

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 :headding-anchor:list

Beskrivning

Kommaavgränsad lista med uttryck som använder hakparenteser som avgränsare.

Polymorfism stöds inte, och därför bör alla uttryck i listan ha samma typ.

Litteral representation

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

Exempel

["value1","value2"]
[3,5]
[toDuration(500),toDuration(800)]
recommendation-more-help
4f4a00c1-77c9-4eee-84df-bbe6206c3ab9