Teknologian jakaminen

lua:n (2) käytön aloittaminen - tietotyypit

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Esipuhe

Tämä artikkeli on viitattu osoitteesta:Lua-tietotyypit |. Novice Tutorial (runoob.com)

Ne, jotka haluavat tietää lisää, tarkista yllä oleva linkki:

kahdeksan perustyyppiä

type - toiminto datatyypin tarkastelemiseksi:

testiohjelma:

  1. print(type("Hello world")) --> string
  2. print(type(10.4*3)) --> number
  3. print(type(print)) --> function
  4. print(type(type)) --> function
  5. print(type(true)) --> boolean
  6. print(type(nil)) --> nil
  7. print(type(type(X))) --> string
  8. print(type(Y)) -->nil
  9. print(type('Y')) -->string

Vaikutusesittely

Voit nähdä, että tässä tulostamamme tyyppi (Y) on nollatyyppi, miksi? Seuraava nolla (tyhjä) näytetään sinulle.

nolla (tyhjä)

Nolla-tyyppi edustaa tyyppiä, jolla ei ole yhtään kelvollista arvoa. Jos esimerkiksi tulostetaan muuttuja ilman määritystä, tulos on nolla.

Alustamaton muuttujatyyppi - nolla

Näin: Kolmen muuttujan tulostyypit, joille ei ole määritetty alkuarvoja, ovat nolla.

nolla poistaa avainarvoparit taulukosta

testiohjelma

  1. tab1 = { key1 = "val1", key2 = "val2",
  2. "val3","val4",key3 = "val5" }
  3. for k, v in pairs(tab1) do
  4. print(k .. " - " .. v)
  5. end
  6. print("=========直接输出=============")
  7. tab1.key1 = nil
  8. for k, v in pairs(tab1) do
  9. print(k .. " - " .. v)
  10. end
  11. print("============删除key1后==========")
  12. tab1.key3 = nil
  13. for k,v in pairs(tab1) do
  14. print(k.. " - "..v)
  15. end
  16. print("=========删除key3后============")

operaation tulos

Globaaleissa muuttujissa ja taulukoissa nollalla on myös "poisto" vaikutus. Nolla-arvon määrittäminen globaaleille muuttujille tai muuttujille taulukossa vastaa niiden poistamista.

nollaa pitäisi verrata lainausmerkkeihin"

type(X)==nolla tulostavääräSyynä on, että tyyppi (X) on olennaisesti palautettu "nolla"-merkkijono, joka on merkkijonotyyppi:

boolean

Boolen tyypillä on vain kaksi valinnaista arvoa: true (tosi) ja false (false) Lua käsittelee false ja nolla, ja kaikki muu on totta.

testiohjelma

  1. print(type(true))
  2. print(type(false))
  3. print(type(nil))
  4. if false or nil then
  5. print("至少有一个是 true")
  6. else
  7. print("false 和 nil 都为 false")
  8. end
  9. if 0 then
  10. print("数字 0 是 true")
  11. else
  12. print("数字 0 为 false")
  13. end

Vaikutusesittely

määrä


Lualla on oletuksena vain yksi numerotyyppi - kaksinkertainen (kaksoistarkkuuksinen) tyyppi (oletustyyppiä voidaan muokata luaconf.h:ssa), seuraavat kirjoitustavat katsotaan numeroiksi

merkkijono (merkkijono)

"" '' -- edustaa merkkijonoa


[[ ]] -- edustaa merkkijonoa
 

Numerot voidaan pakottaa merkkijonoihin

Suorittaessaan aritmeettisia operaatioita numeeriselle merkkijonolle, Lua yrittää muuntaa numeerisen merkkijonon luvuksi:

Käytä .. merkkijonojen ketjuttamiseen

 

pöytä

Luassa taulukon luominen tapahtuu "konstruktiolausekkeiden" avulla. Yksinkertaisin muodostettu lauseke on {}, jota käytetään tyhjän taulukon luomiseen. Voit myös lisätä tietoja taulukkoon ja alustaa taulukon suoraan:

alustustaulukko

Muokkaa taulukkoa indeksin (avain) perusteella

Pöytä Luassa on itse asiassa a"Assosiatiivinen matriisi"(assosiatiiviset taulukot), taulukon indeksi voi olla numero tai merkkijono.

Luan indeksit alkavat 1:stä (sen sijaan)

Taulukolla ei ole kiinteää pituutta. Kun uusia tietoja lisätään, taulukon pituus kasvaa automaattisesti.

toiminto

Luassa funktioita pidetään "ensimmäisen luokan arvoina".

Funktiot voidaan tallentaa muuttujiin:

Lambdalauseke (anonyymi funktio) välittää parametrit


lanka


Luassa tärkein lanka on korutiini. Se on samanlainen kuin säie, ja sillä on oma itsenäinen pino, paikalliset muuttujat ja käskyosoitin.
Globaalit muuttujat ja useimmat muut asiat voidaan jakaa muiden korutiinien kanssa.

Ero säikeiden ja korutiinien välillä: Säikeet voivat ajaa useita kertoja samanaikaisesti, mutta sarjat voivat suorittaa vain yhden kerrallaan, ja käynnissä oleva korutiini keskeytetään vain, kun se on keskeytetty.

käyttäjätiedot (muokattu tyyppi)


userdata on käyttäjän määrittämä tietotyyppi, jota käytetään edustamaan sovelluksen tai C/C++-kielikirjaston luomaa tyyppiä.
Voit tallentaa mitä tahansa dataa mistä tahansa C/C++-tietotyypistä (yleensä struct ja pointer) Lua-muuttujaan ja kutsua sitä