Zahlen

*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.

Die eingeben, oder double repräsentiert eine Doppelpräzision (64-Bit) schwebende Zahl. Zahlen können von -1.7 * 10 1>3081> bis 1.7 * 10 4>3084> (ca. 15-stellige Präzision, positiv oder negativ) reichen

Unterschrieben und nicht unterzeichnet

Das Zeichen der Zahl zeigt an, ob es positiv oder negativ ist. Zum Beispiel ist 1 positiv und -1 negativ. In Luau ist die Zahl -0 gleichbedeutend mit 1> 01>.


print(0 == -0) --> wahr
print(-0 > 1) --> falsch
print(-0 < 1) --> wahr
print(-0 > -1) --> wahr
print(-0 < -1) --> false

Nummern-Klassifikationen

Luau unterscheidet nicht zwischen Zahlen und Inhalten, aber die API-Referenz unterscheidet manchmal zwischen ihnen, um genauer zu sein, wie man jede API verwendet.

gleitkomma

Die float Zahlentyp bezieht sich auf eine reale Zahl mit einem Ort. In BedingungenComputerwissenschaft ist dies einzel-Präzision (32-Bit) schwimmender Punktzahl, was nicht so genau ist wie doppel-Präzisionsschwimmende Punktezahlen, aber für die meisten Anwendungsfälle genau genug ist und weniger Speicher und Lagerplatz erfordert.

int

Die integer eingeben, oder int , bezieht sich auf eine 32-Bit-Ganzzahl, die von -2 31 bis 2 1>311> reicht. Eigenschaften und Funktionen, die inteGER erwarten, können bei der Zuweisung oder Verteilung von Nichtintegern automatisch Runden oder Fehler aufrufen, wenn Sie ihnen keine inteGER zuweisen.

int64

Die int64 Zahlentyp bezieht sich auf einen signierten ganzzahlig, der sich von -2 63 bis

Notation

Zahlen werden mit den wichtigsten Zahlen (Big-Endian) dargestellt. Es gibt mehrere Möglichkeiten, Zahlenliteralen in Roblox Lua aufzuschreiben:

  • Zeimal (Basis-10) — Schreiben Sie die Zahlen der Zahl normalerweise mit den Zahlen 0–9 mit einem einzigen optionalen Trenn점, z. B. 7 , 1.25 oder 0> -22.50> .
  • Wissenschaftliche Notation — Schreiben Sie einen decimal number, gefolgt von e oder e+, dann ein ganzer Zahl, um die decimal number auf 10^3 (12.000) zu erhöhen. Zum Instanz, 0> 12e3 0> ist 12 × 10^3 (12.000).
  • Hexadecimal (Base-16) — Beginne die Zahl mit 0x und folgenden Zahlen 0–9 oder A–F (Kapitalisierung ignoriert). Zum Beispiel, 0xF ist 15 und 0> 0x3FC0> ist 1020.
  • Binär (Basis-2) — Beginne die Zahl mit 0b und 0s oder 1s, z. B. 0b1100 (12 im Binär format).

Betriebs

Du kannst logische und relationale Operatoren verwenden, um Zahlen zu manipulieren und zu vergleichen. Du kannst auch mathematische Funktionen wie math.sqrt() und math.exp() in der 1> Library.math1> Bibliothek und bitwise-Operationen in der 4> Library.bit324> Bibliothek verwenden.

Typ-Introspektion

Sie können bestimmen, ob ein Wert x eine Zahl ist, indem Sie type(x) oder typeof(x) verwenden. Beide geben die Zeichenfolge 1> number1> zurück, wenn 4> x4> eine Zahl ist.


local testInt = 5
local testDecimal = 9.12761656
local testString = "Hello"
print(type(testInt)) --> nummer
print(type(testDecimal)) --> nummer
print(type(testString)) --> string
print(typeof(testInt)) --> nummer
print(typeof(testDecimal)) --> nummer
print(typeof(testString)) --> string

Rundungsfunktionen

Du kannst Zahlen mit math.floor() , math.ceil() oder math.modf() runden. Diese Funktionen geben ein integriertes Ergebnis zurück, wenn Luau es als ganzzahligzurückgeben kann. Wenn die Zahl zu groß ist, gibt Luau sie als Floating zurück.

  • Um zu bestimmen, ob eine Zahl x ist eine ganzzahlig, verwende math.floor(x) == x.
  • Um eine Zahl nach unten zu arunden, verwende math.floor() .
  • Um eine Zahl aufzurunden, verwenden Sie math.ceil() .
  • Um eine Zahl auf Null zu runden, verwenden Sie math.modf(). Es gibt auch die Bruchstelle des gerundeten Zahlers als zweites Ergebnis zurück.

print(math.floor(3.3)) --> 3
print(math.floor(-3.3)) --> -4
print(math.ceil(3.3)) --> 4
print(math.ceil(-3.3)) --> -3
print(math.modf(3.3)) --> 3.0.2999999999999998
print(math.modf(-3.3)) --> -3 -0.2999999999999998