Menu
Coddy logo textTech

Çift Ekleme ve Düzenleme

Coddy'nin Lua Journey'sinin Temeller bölümünün bir parçası. Ders 68 / 90.

Yeni bir anahtar-değer çifti eklemek veya mevcut olanı değiştirmek için, nokta notasyonu veya köşeli parantez notasyonu ile atama operatörünü kullanmanız yeterlidir:

local player = {
    ["name"] = "Alex",
    ["level"] = 5
}

-- Yeni bir anahtar-değer çifti ekle
player.gold = 100

-- Mevcut bir değeri değiştir
player.level = 6

Bu yaklaşımın güzelliği, Lua'nın ekleme ve değiştirme arasında bir ayrım yapmamasıdır. Eğer tabloda "gold" anahtarı mevcut değilse, 100 değeriyle oluşturulur. Eğer "level" anahtarı zaten mevcutsa, değeri 6 olarak güncellenir.

Bu işlemler için nokta notasyonunu veya köşeli parantez notasyonunu kullanabilirsiniz:

-- Bunların her ikisi de aynı şekilde çalışır
player.class = "Warrior"
player["weapon"] = "Sword"
challenge icon

Görev

Kolay

Hem yeni öznitelikler eklemeyi hem de mevcut olanları değiştirmeyi gösteren bir karakter ilerleme sistemi oluşturun. hero adında bir tablo oluşturarak başlayın ve şu başlangıç anahtar-değer çiftlerini atayın: ["name"] anahtarına "Warrior" dizesi, ["level"] anahtarına 5 sayısı ve ["health"] anahtarına 120 sayısı atanmalıdır.

Başlangıç karakter tablosunu oluşturduktan sonra şu değişiklikleri yapın: İlk olarak, nokta notasyonunu kullanarak "Paladin" değerine sahip yeni bir ["class"] anahtar-değer çifti ekleyin. Ardından, köşeli parantez notasyonunu kullanarak mevcut level değerini 7 olarak değiştirin. Son olarak, yine köşeli parantez notasyonunu kullanarak 80 değerine sahip yeni bir ["mana"] anahtar-değer çifti ekleyin.

Tüm değişiklikler tamamlandıktan sonra, değişiklikleri doğrulamak için kahramanın sınıfını ve güncellenmiş seviyesini yazdırın.

Kendin dene

-- Başlangıç kahraman tablosunu oluşturun
local hero = {
    -- YAPILACAK: Başlangıç anahtar-değer çiftlerini buraya ekleyin
}

-- YAPILACAK: Nokta ve köşeli parantez notasyonunu kullanarak yeni öznitelikler ekleyin ve mevcut olanları değiştirin

-- Kahramanın sınıfını ve güncellenmiş seviyesini yazdırın
print(hero.class)
print(hero.level)
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Temeller bölümündeki tüm dersler

Kendi başına pratik yap: Online Lua derleyicisi