Lua veidi, vērtības un izteicieni

Satura rādītājs
Lua Tā ir dinamiska valoda attiecībā uz datu tipiem un to vērtībām, tas ir, veidojot mainīgo un norādot, ka tas ir virkne, skaitlis vai pat Būla, nav neviena veida definīcijas.
Izteiksmes iet roku rokā ar vērtībām, kas ļauj mums ar tām veikt operācijas, kas var būt dažādas - sākot ar aritmētiskām, relāciju un pat nosacītām operācijām, lai dotu mūsu programmām dinamismu, bet pirms pārejam pie izteiksmēm, apskatīsim to vērtību veidus, mums pieder Lua un kā viņi strādā valodas ietvaros.
In Lua Katra vērtība ielādē savu veidu, kurā mēs varam atrast astoņus dažādus šo veidu veidus: nulle, Būla, skaitlis, virkne, lietotāja dati, funkcija, pavediens un tabula, kur ar funkciju tips () mēs varam zināt dotās vērtības tipa nosaukumu. Apskatīsim vienkāršu piemēru, kā Lua interpretējiet to saskaņā ar tips ():

Kā redzam, tipu nosaka tā ielādētā vērtība, un norādītā funkcija palīdz mums zināt, kas tas ir, mēs varam redzēt, ka pat pēdējā mainīgā H gadījumā rezultāts ir virkne, un tas ir tāpēc, ka funkcija tips () vienmēr ir virkne. Tā kā mēs redzējām, kā Lua interpretējiet datu veidus, apskatīsim katru no tiem sīkāk:
NēŠis ir vērtību veids, kura galvenais īpašums ir atšķirties no citām vērtībām. Kā redzējām pēdējā apmācībā, globālajam mainīgajam pēc noklusējuma ir vērtība nulle un, ja mēs vēlamies to novērst, mēs piešķiram šo vērtību, mēs pat varam to izmantot, lai attēlotu noderīgas vērtības neesamību.
BūlaBūla vērtībām, tāpat kā pārējām programmēšanas valodām, ir divas vērtības - patiesa un nepatiesa, taču atšķirībā no citām valodām šāda veida datiem nav kopēja domēna nosacījumos, jo jebkura var attēlot nosacījumu.
SkaitlisŠis datu veids apzīmē gan veselus skaitļus, gan decimāldaļas. Lua nav veselu skaitļu vērtības veida, un tas nav vajadzīgs, jo Lua tas var attēlot jebkuru 32 bitu veselu skaitli bez noapaļošanas problēmām, taču valodas interesantākais ir tas, ka mēs varam to apkopot, lai izmantotu citu veidu, piemēram, garus veselus skaitļus vai pludiņus, kas ir diezgan noderīgi gadījumos, kad aparatūrai nav atbalsts aiz komata.
StīgaStīgas iekšā Lua Tās ir rakstzīmju secība, tās ir nemainīgas vērtības, tas ir, mēs nevaram mainīt rakstzīmi virknē. Tos apstrādā automātiskā valodas atmiņa, tāpat kā pārējos objektus, un virknes piešķiršana var notikt ar dubultām vai atsevišķām pēdiņām.
TabulaTabulas datu tips ievieš asociatīvo masīvu, kas ir masīvs, kuru var indeksēt ne tikai ar skaitļiem, bet ar virknēm vai jebkuru citu valodas vērtību, izņemot nulli. Tabulām nav noteikta izmēra, tāpēc mēs varam iekļaut tik daudz elementu, cik vēlamies, un ar tām mēs varam pārstāvēt moduļus, paketes un objektus. Visbeidzot, tā izveide ir tikpat vienkārša kā kronšteinu izmantošana {} pie galda inicializācijas.
IespējasFunkcijas iekšā Lua tiem ir diezgan savdabīga uzvedība, mēs varam tos saglabāt mainīgajos, nodot tos kā argumentus citām funkcijām un atdot tos pat kā rezultātus, kur Lua šīs funkcijas var saukt par rakstītām gan pašā valodā, gan C valodā.
Lietotāja datiDatu veids lietotāja dati ļauj saglabāt mainīgos Lua patvaļīga informācija no C. Tam nav iepriekš noteiktu darbību Lua, izņemot uzdevumu un vienlīdzības testus, kur šāda veida galvenā funkcija ir attēlot jaunus veidus, kas izveidoti ar lietojumprogrammu vai bibliotēku, kas rakstīta C valodā.
Kā redzam, veidi daudz neatšķiras no tā, ko mēs varam atrast pašreizējās valodās, taču ir skaidrs, ka vienkāršība, kas mums ir jāatspoguļo, ir daudz lielāka, tad apskatīsim izteicienu lomu un to, kā mēs tos varam izmantot ar mūsu vērtībām.
Aritmētiskās darbības ir ārkārtīgi svarīgas jebkurai programmai, un ir svarīgi zināt, kā ar tām rīkoties un kādi ierobežojumi var pastāvēt mūsu izmantotajā valodā. Lua tas atbalsta parastos operatorus, pie kuriem esam pieraduši: saskaitīšanu, atņemšanu, reizināšanu, dalīšanu, eksponenciālu, procentuālu un noliegumu.
Apskatīsim vienkāršu kodu, kurā parādīsim dažu operatoru izmantošanu Lua:
 x = 8 + 5 y = 9 - 2 izdrukas (x * y% 0,01)
Reizināšanas operācijas rezultātā mēs izmantojam saskaitīšanu, atņemšanu un dalīšanu ar 2. Redzēsim, kā tulks atbildēs, kad mēs palaidīsim kodu caur konsoli:

PALIELINĀT

Kā redzam, Lua daudz neatšķiras no pārējām valodām aritmētisko darbību veikšanai, taču tā vienkāršība koda rakstīšanā ļauj to viegli izmantot programmas izstrādei.
Lua tāpat kā citas valodas, tas dod mums relāciju operatorus, piemēram, lielāks par>, mazāks par <, mazāks vai vienāds =, vienāds-vienāds == un noliegums ~ =. Mēs redzam, ka vienīgais, kas, iespējams, atšķiras, ir noliegums, bet pēc tam, kad būsim pieraduši, ar tā lietošanu nebūs problēmu.
Visi šie operatori var atgriezt patiesu vai nepatiesu, kur mēs pat varam piemērot gan vienlīdzības operatoru, gan nolieguma operatoru divām vērtībām. Šie salīdzinājumi Lua tā tos veic, pamatojoties uz tipu, papildus citiem faktoriem, turpmāk kodā redzēsim, kur salīdzinājums tiek veikts, pamatojoties uz to pašu objektu:
 a = {}; a.x = 1; a.y = 0 b = {}; b.x = 1; b.y = 0 c = a
Ja, ja salīdzinām to pašu, tad operācijas rezultāts mums dod, ka a ir vienāds ar c, bet ka a atšķiras no b, tas ir saistīts ar faktu, ka tie ir viens un tas pats objekts. Turklāt mums jābūt ļoti uzmanīgiem, salīdzinot dažādus veidus, jo, piemēram, 6 atšķiras no "6" un ja mēs darām kaut ko līdzīgu "3" <"8" Lua tas radīs kļūdu, jo mēs sajaucam virknes.
Loģiskie operatori Lua tie ir un, vai nav. Ja tiek veikts salīdzinājums, izmantojot šos operatorus, pirmais arguments tiks atgriezts, ja tas būs nepatiess, pretējā gadījumā tiks atgriezts otrais. Apskatīsim virkni piemēru interaktīvajā konsolē, lai demonstrētu iepriekš minēto.

PALIELINĀT

Lai veiktu savienošanu Lua ir caur kolu, tas nedaudz maina sintaksi attiecībā uz citām valodām, bet tādā pašā veidā tas ir pavisam vienkārši, bet Lua Tas vienmēr iet nedaudz tālāk, un, ja tas atrod skaitli un ir sasaistīšanas operācija, tas to pārvērš par virkni, apskatīsim divus vienkāršus šīs darbības piemērus:

PALIELINĀT

Kā mēs redzam pirmajā gadījumā, operācija tiek veikta bez problēmām, un otrajā gadījumā mums ir skaitļi, Lua automātiski pārvērš tos virknē. Ir svarīgi atcerēties, ka virknes ir nemainīgas, tāpēc šī darbība vienmēr rada jaunu virkni, neveicot nekādas izmaiņas tās operandā.
Visbeidzot, mums ir konstruktori, kas ir izteiksmes, kas ļauj mums izveidot un inicializēt tabulas, šī funkcija ir unikāla Lua un tas ir viens no tā daudzpusīgākajiem un spēcīgākajiem mehānismiem. Mēs varam bez problēmām izmantot tukšu konstruktoru, izmantojot tikai iekavas {} kas izveidos tukšu tabulu kā tādu. Tie var arī inicializēt masīvus vai sarakstus, apskatīsim piemēru:
 dienas = {"svētdiena", "pirmdiena", "otrdiena", "trešdiena", "ceturtdiena", "piektdiena", "sestdiena"}
Šeit mēs izveidojam sarakstu ar nedēļas dienām, un, ja mēs vēlamies piekļūt tā elementiem, norādot tā paša indeksu, piemēram, lai iegūtu ceturtdienu, tas būtu indeksa numurs 5 vai svētdiena būtu skaitlis 1, kopš Lua Tas netiek inicializēts līdz nullei, tāpat kā pārējās valodas. Apskatīsim, kā tas izskatās, kad to palaižam savā konsolē:

Mēs varam arī izveidot savus asociatīvos masīvus ar galveno vērtību tipu:
masīvs = {x = 26, y = 67}
Bet ir svarīgi, lai, lai piekļūtu tā vērtībām, mēs atsaucamies uz indeksu ar dubultām pēdiņām, mēs iegūsim vērtību nulle, mēs redzēsim savu darbību interaktīvajā konsolē:

Ar to mēs beidzam apmācību, kur mēs to varētu redzēt Lua paplašina savu vienkāršību uz visām tās veidojošajām malām, sākot no dinamiskajiem veidiem, ar kuriem tā tiek apstrādāta, vienkāršā veidā, kā veikt uzdevumus, apstrādāt relāciju un loģiskos operatorus, kā arī nodrošinot mūs ar ļoti noderīgiem rīkiem, piemēram, savienojumiem un konstruktoriem. pieredze ar valodu pēc iespējas patīkamāka un patīkamāka.Vai jums patika šī apmācība un palīdzējāt tai?Jūs varat apbalvot autoru, nospiežot šo pogu, lai sniegtu viņam pozitīvu punktu

Jums palīdzēs attīstību vietā, daloties lapu ar draugiem

wave wave wave wave wave