le mie informazioni di contatto
Posta[email protected]
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Prefazione
Questo articolo è citato da:Tipi di dati Lua |. Tutorial per principianti (runoob.com)
Per chi vuole saperne di più, può consultare il link qui sopra:
- print(type("Hello world")) --> string
- print(type(10.4*3)) --> number
- print(type(print)) --> function
- print(type(type)) --> function
- print(type(true)) --> boolean
- print(type(nil)) --> nil
- print(type(type(X))) --> string
- print(type(Y)) -->nil
- print(type('Y')) -->string
Puoi vedere che il tipo (Y) che produciamo qui è un tipo nil, perché? Il prossimo zero (vuoto) ti verrà dimostrato.
Il tipo nil rappresenta un tipo che non ha alcun valore valido Ha un solo valore: nil. Ad esempio, la stampa di una variabile senza assegnazione restituirà un valore nil:
Come segue: I tipi di output delle tre variabili a cui non sono assegnati valori iniziali sono tutti pari a zero.
- tab1 = { key1 = "val1", key2 = "val2",
- "val3","val4",key3 = "val5" }
- for k, v in pairs(tab1) do
- print(k .. " - " .. v)
- end
- print("=========直接输出=============")
-
-
- tab1.key1 = nil
- for k, v in pairs(tab1) do
- print(k .. " - " .. v)
- end
- print("============删除key1后==========")
-
-
-
- tab1.key3 = nil
- for k,v in pairs(tab1) do
- print(k.. " - "..v)
- end
- print("=========删除key3后============")
-
Per le variabili e le tabelle globali, nil ha anche un effetto di "cancellazione". Assegnare un valore nil alle variabili globali o alle variabili nella tabella equivale a cancellarle.
type(X)==nil risultafalsoIl motivo è che type(X) è essenzialmente la stringa "nil" restituita, che è un tipo stringa:
Il tipo booleano ha solo due valori opzionali: true (true) e false (false). Lua tratta false e nil come false e anche tutto il resto è vero.
- print(type(true))
- print(type(false))
- print(type(nil))
-
- if false or nil then
- print("至少有一个是 true")
- else
- print("false 和 nil 都为 false")
- end
-
- if 0 then
- print("数字 0 是 true")
- else
- print("数字 0 为 false")
- end
Lua ha solo un tipo numerico per impostazione predefinita: tipo double (doppia precisione) (il tipo predefinito può essere modificato in luaconf.h), i seguenti metodi di scrittura sono considerati come num
Quando si eseguono operazioni aritmetiche su una stringa numerica, Lua proverà a convertire la stringa numerica in un numero:
In Lua, la creazione di tabelle viene eseguita tramite "espressioni costruttive". L'espressione costruita più semplice è {}, che viene utilizzata per creare una tabella vuota. Puoi anche aggiungere alcuni dati alla tabella e inizializzare direttamente la tabella:
Un tavolo in Lua è in realtà a"Array associativo"(array associativi), l'indice dell'array può essere un numero o una stringa.
La tabella non avrà una lunghezza fissa. Quando vengono aggiunti nuovi dati, la lunghezza della tabella aumenterà automaticamente. Le tabelle non inizializzate saranno pari a zero.
In Lua, le funzioni sono considerate "Valori di prima classe".
In Lua, il filo più importante è la coroutine. È simile a un thread e ha il proprio stack indipendente, variabili locali e puntatore alle istruzioni.
Le variabili globali e la maggior parte delle altre cose possono essere condivise con altre coroutine.La differenza tra thread e coroutine: i thread possono essere eseguiti più volte contemporaneamente, ma le coroutine possono eseguirne solo una alla volta e una coroutine in esecuzione verrà sospesa solo quando viene sospesa.
userdata è un tipo di dati definiti dall'utente utilizzati per rappresentare un tipo creato da un'applicazione o da una libreria di linguaggi C/C++.
Puoi memorizzare qualsiasi dato di qualsiasi tipo di dati C/C++ (solitamente struttura e puntatore) in una variabile Lua e chiamarla