Dodawanie i modyfikowanie par
Część sekcji Podstawy ścieżki Lua w Coddy. Lekcja 68 z 90.
Aby dodać nową parę klucz-wartość lub zmodyfikować istniejącą, wystarczy użyć operatora przypisania, stosując notację kropkową lub notację nawiasową:
local player = {
["name"] = "Alex",
["level"] = 5
}
-- Dodaj nową parę klucz-wartość
player.gold = 100
-- Zmień istniejącą wartość
player.level = 6Piękno tego podejścia polega na tym, że Lua nie rozróżnia dodawania od modyfikowania. Jeśli klucz "gold" nie istnieje w tabeli, zostaje utworzony z wartością 100. Jeśli klucz "level" już istnieje, jego wartość zostaje zaktualizowana do 6.
Do tych operacji możesz używać notacji kropkowej lub nawiasowej:
-- Oba te zapisy działają tak samo
player.class = "Warrior"
player["weapon"] = "Sword"Wyzwanie
ŁatwyUtwórz system rozwoju postaci, który pokazuje zarówno dodawanie nowych atrybutów, jak i modyfikowanie istniejących. Zacznij od utworzenia tablicy o nazwie hero z następującymi początkowymi parami klucz-wartość: do ["name"] przypisz ciąg znaków "Warrior", do ["level"] przypisz liczbę 5, a do ["health"] przypisz liczbę 120.
Po utworzeniu początkowej tablicy postaci wprowadź następujące modyfikacje: Najpierw dodaj nową parę klucz-wartość ["class"] z wartością "Paladin", używając notacji kropkowej. Następnie zmień istniejącą wartość level na 7, używając notacji nawiasowej. Na koniec dodaj kolejną nową parę klucz-wartość ["mana"] z wartością 80, używając notacji nawiasowej.
Wiersze poniżej Twojego kodu wyświetlają klasę i poziom bohatera, dzięki czemu możesz sprawdzić wprowadzone zmiany.
Spróbuj swoich sił
-- Utwórz początkową tabelę hero
local hero = {
-- TODO: Dodaj tutaj początkowe pary klucz-wartość
}
-- TODO: Dodaj nowe atrybuty i zmodyfikuj istniejące, używając notacji kropkowej i nawiasowej
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy
4Operatory 2: relacyjne i logiczne
Operatory równościOperatory relacyjneOperator „and”Operator „or”Operator „not”Ewaluacja z krótkim spięciemWartości prawdziwe i fałszywePodsumowanie – prosta logika7Podstawy logiki warunkowej
Instrukcja if-thenInstrukcja if-then-elseInstrukcja elseifPowtórzenie — skrzynia skarbów10Tabele, część 1: styl listy
Czym jest tabela?Tworzenie tabeliDostęp do elementów według indeksuModyfikowanie elementów według indeksuOperator długości '#'table.insert()table.remove()Powtórzenie — zarządzanie członkami drużyny13Projekt: Prosty sklep z eliksirami
Konfiguracja projektuDodawanie eliksiru2Zmienne i typy danych
Czym jest zmienna?LiczbyŁańcuchy znakówWartości logiczneWartość „nil”Funkcja type()Konwencje nazewnictwaPowtórzenie — profil postaci5Podstawowe wyjście
Wyświetlanie literałówWyświetlanie zmiennychWyświetlanie wielu wartościŁączenie ciągów znaków i zmiennychFunkcja tostring()Dane wejścioweRzutowanie typówPowtórka — raport o statusiePowtórka — do 1208Podstawy manipulacji ciągami znaków
string.len()string.upper i string.lowerstring.sub()string.rep()string.find()Podsumowanie – formatuj nazwę użytkownika11Tabele 2: w stylu słownika
Pary klucz-wartośćTworzenie tabel w stylu słownikaDostęp — notacja nawiasowaDostęp za pomocą notacji kropkowejDodawanie i modyfikowanie parUsuwanie par za pomocą nilPodsumowanie — właściwości elementów3Operatory 1: Arytmetyka i konkatenacja
Operatory arytmetyczneOperator moduloOperator potęgowaniaŁączenie ciągów znakówKolejność wykonywania operatorówPowtórka – proste obliczenia6Projekt: wyświetlanie statystyk postaci
Wiadomość powitalnaDeklarowanie statystyk postaci9Podstawy funkcji
Deklarowanie funkcjiWywoływanie funkcjiFunkcje z parametramiFunkcje z wieloma parametramiInstrukcja „return”Powtórzenie — kalkulator polaPoćwicz samodzielnie: Kompilator Lua online