Menu
CoddyTech

Mapping

Termasuk bagian Dasar-Dasar dalam perjalanan Solidity di Coddy. Pelajaran 42 dari 53.

Mapping menghubungkan key dengan nilai dalam penyimpanan. Deklarasikan mapping(keyType => valueType) pada cakupan contract, lalu gunakan tanda kurung siku untuk membaca atau menulis key. Key yang belum ditulis menghasilkan nilai default dari tipe nilainya, seperti nol untuk uint256.

Deklarasikan ini pada cakupan contract:

mapping(uint256 => uint256) points;

Gunakan ini di dalam fungsi main yang disediakan:

points[4] = 18;
console.log(points[4]);
console.log(points[5]);

Penugasan hanya mengubah kunci empat. Kunci lima belum pernah diberi nilai dan terbaca sebagai nol. Sebuah mapping tidak menyediakan panjang atau list bawaan yang berisi kuncinya. Catat kunci secara terpisah jika aplikasi memerlukan iterasi.

Kunci mapping yang belum ditulis terbaca sebagai nilai default dari tipe nilainya.

challenge icon

Tantangan

Mudah

Deklarasikan mapping dari key uint256 ke nilai uint256 bernama scores. Tetapkan points ke key player, lalu cetak scores[player] dan scores[player + 1].

Pengujian memberikan argumen kepada main dalam urutan ini: uint256 player, uint256 points. Setiap pengujian dimulai dengan state kontrak yang baru.

Gunakan console.log untuk output yang diminta. Cetak hanya nilai yang diminta, satu per baris, tanpa label tambahan kecuali jika tugas memintanya.

Coba sendiri

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
    function main(uint256 player, uint256 points) external  {
        // Tulis solusimu di sini.
    }
}
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Dasar-Dasar

Latihan sendiri: Playground Solidity