table.concat ja table.move
Yhdistäkää taulukoita tehokkaasti ja kopioikaa taulukon osia sisäänrakennetuilla funktioilla.
table.concat ja table.move on ilmainen Lua Academy-oppitunti CoddyKitissä. Tämä on oppitunti 2/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu Lua Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Lua Academy-kurssilla on yhteensä 4 oppituntia.
table.concat-perusteet
table.concat(t, sep, i, j) yhdistää taulukon alkioita merkkijonoksi. sep-erotin on oletusarvoisesti "".
Yksinkertainen yhdistäminen
Yhdistä merkkijonotaulukon alkiot erottimella.
local fruits = {"apple", "banana", "cherry"}
print(table.concat(fruits, ", ")) -- apple, banana, cherryOsittainen yhdistäminen i- ja j-arvoilla
Määritä alku- ja loppuindeksit, joiden välinen taulukon osa yhdistetään.
local t = {"a", "b", "c", "d", "e"}
print(table.concat(t, "-", 2, 4)) -- b-c-dLuvut table.concat-funktiossa
Alkioiden on oltava merkkijonoja tai lukuja; muut tyypit aiheuttavat virheen. Muunna ne ensin tostring-funktiolla.
local nums = {1, 2, 3}
print(table.concat(nums, " + ")) -- 1 + 2 + 3table.move-esittely
table.move(a1, f, e, t, a2) kopioi taulukon a1 alkiot indekseiltä f..e taulukkoon a2 alkaen indeksistä t.
Taulukon osan kopiointi
Kopioi yhden taulukon alkiot 2–4 toiseen taulukkoon.
local src = {10, 20, 30, 40, 50}
local dst = {}
table.move(src, 2, 4, 1, dst)
print(table.concat(dst, ", ")) -- 20, 30, 40Siirtäminen paikallaan
Käytä table.move-funktiota saman lähde- ja kohdetaulukon kanssa siirtääksesi alkioita taulukon sisällä.
local t = {1, 2, 3, 4, 5}
table.move(t, 2, 5, 1) -- shift left by 1
t[5] = nilTaulukon osan lisääminen
Lisää yhden taulukon osa tehokkaasti toisen taulukon loppuun.
local base = {"x", "y"}
local extra = {"a", "b", "c"}
table.move(extra, 1, #extra, #base + 1, base)
print(table.concat(base, ", "))Taulukon kloonaaminen table.move-funktiolla
Pinnallisen kloonin voi luoda siirtämällä koko taulukon uuteen tyhjään taulukkoon.
local original = {1, 2, 3}
local clone = {}
table.move(original, 1, #original, 1, clone)Suorituskykyhyöty
table.move on toteutettu C-kielellä ja on suurilla taulukon osilla nopeampi kuin manuaalinen Lua-silmukka, koska se välttää tulkin aiheuttaman yleiskustannuksen jokaiselta alkiolta.
table.concat vai string.format
Käytä table.concat-funktiota taulukoiden yhdistämiseen ja string.format-funktiota yksittäisten arvojen jäsenneltyyn muotoiluun.
table.move-kysymys
Mitä table.move(src, 2, 4, 1, dst) tekee?
Kertaus: concat ja move
table.concat yhdistää taulukon alkiot merkkijonoksi. table.move kopioi taulukon osia tehokkaasti C-kielellä. Molemmat ovat tärkeitä suorituskykyisessä taulukoiden käsittelyssä.
Opi Lua tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 40
- Oppitunnit
- 159
Usein kysytyt kysymykset
Onko oppitunti ”table.concat ja table.move” ilmainen?
Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa Lua Academy-oppimispolun 3 oppituntia, myös oppitunnin “table.concat ja table.move”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Lua Academy-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”table.concat ja table.move”?
Yhdistäkää taulukoita tehokkaasti ja kopioikaa taulukon osia sisäänrakennetuilla funktioilla. Harjoittelet Lua Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Lua Academy-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Lua Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/4.
Kuinka kauan ”table.concat ja table.move”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Lua Academy-oppitunnilla?
Kyllä. Jokainen Lua Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- table.sort ja vertailufunktiot
- table.concat ja table.move
- Syvä ja pinnallinen kopio
- Taulukoiden muuntaminen: map, filter, reduce