Valori truthy e falsy
Fa parte della sezione Fondamenti del percorso Lua di Coddy. Lezione 24 di 90.
Quando si usano operatori logici come and, or e not, Lua deve determinare cosa viene considerato "vero" o "falso" nei contesti logici. Questo concetto è chiamato valori truthy e falsy e Lua lo gestisce diversamente da molti altri linguaggi di programmazione.
In Lua, solo due valori sono considerati falsy (trattati come false nelle operazioni logiche):
print(false and "This won't print") -- false è un valore falsy
print(nil and "This won't print") -- nil è un valore falsyNota che and e or restituiscono uno dei loro operandi, non solo true o false: a and b restituisce a quando a è falsy, altrimenti b; a or b restituisce a quando a è truthy, altrimenti b. Quindi le due righe sopra stampano false e nil, e ciascuna delle righe qui sotto stampa il suo testo.
Tutto il resto in Lua è considerato truthy (trattato come true nelle operazioni logiche). Questo include valori che potrebbero sorprenderti se provieni da altri linguaggi:
print(0 and "This will print") -- 0 è considerato vero in Lua!
print("" and "This will print") -- Una stringa vuota è considerata vera!
print({} and "This will print") -- Una tabella vuota è considerata vera!Provalo tu
Questa lezione non include una sfida di codice.
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Fondamenti
4Operatori 2: relazionali e logici
Operatori di uguaglianzaOperatori relazionaliL'operatore 'and'L'operatore 'or'L'operatore 'not'Valutazione short-circuitValori truthy e falsyRiepilogo: logica semplice7Logica condizionale di base
L'istruzione if-thenL'istruzione if-then-elseL'istruzione elseifRiepilogo - Il forziere del tesoro2Variabili e tipi di dati
Che cos'è una variabile?NumeriStringheValori booleaniIl valore 'nil'La funzione type()Convenzioni di denominazioneRiepilogo - Profilo del personaggio5Output di base
Stampare valori letteraliStampare variabiliStampare più valoriCombinare stringhe e variabiliLa funzione tostring()InputCastRipasso - Rapporto di statoRipasso - Fino a 1208Basi della manipolazione delle stringhe
string.len()string.upper & string.lowerstring.sub()string.rep()string.find()Riepilogo - Formatta il nome utente3Operatori 1: aritmetica e concatenazione
Operatori aritmeticiOperatore moduloOperatore di elevamento a potenzaConcatenazione di stringhePrecedenza degli operatoriRipasso: calcoli semplici6Progetto: visualizzazione delle statistiche del personaggio
Messaggio di benvenutoDichiara le statistiche del personaggio9Funzioni: nozioni di base
Dichiarare una funzioneChiamare una funzioneFunzioni con parametriFunzioni con più parametriL'istruzione 'return'Ripasso - Calcolatore di areaEsercitati da solo: Compilatore Lua online