Pemetaan
Termasuk bagian Dasar-Dasar dalam perjalanan Solidity di Coddy. Pelajaran 42 dari 53.
Pemetaan mengaitkan kunci dengan nilai dalam penyimpanan. Deklarasikan mapping(keyType => valueType) pada cakupan kontrak, lalu gunakan tanda kurung siku untuk membaca atau menulis kunci. Kunci yang belum ditulis menghasilkan nilai default dari tipe nilainya, seperti nol untuk uint256.
Deklarasikan ini pada cakupan kontrak:
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. Mapping tidak menyediakan panjang atau list bawaan yang berisi kuncinya. Lacak kunci secara terpisah jika aplikasi perlu melakukan iterasi.
Kunci mapping yang belum ditulis terbaca sebagai nilai default dari tipe nilainya.
Tantangan
MudahDeklarasikan mapping dari kunci uint256 ke nilai uint256 bernama scores. Tetapkan points ke kunci player, lalu cetak scores[player] dan scores[player + 1].
Pengujian memberikan argumen kepada main dengan urutan berikut: uint256 player, uint256 points. Setiap pengujian dimulai dengan status 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.
}
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
2Variabel dan Tipe Data
Bilangan Bulat Tanpa Tandainput dan outputBilangan Bulat BertandaNilai Booleanstring dalam MemoriKartu Profil5Fungsi
Parameter FungsiMengembalikan NilaiFungsi MurniPemanggilan Fungsi PembantuPerhitungan yang Dapat Digunakan KembaliLatihan sendiri: Playground Solidity