Menu
Coddy logo textTech

Zuordnungen

Teil des Abschnitts Grundlagen der Solidity-Journey von Coddy. Lektion 42 von 53.

Ein Mapping ordnet Schlüssel Werten im Speicher zu. Deklariere mapping(keyType => valueType) auf Vertragsebene und verwende eckige Klammern, um einen Schlüssel zu lesen oder zu schreiben. Ein nicht beschriebener Schlüssel liefert den Standardwert des Werttyps, beispielsweise null für uint256.

Deklariere dies auf Vertragsebene:

mapping(uint256 => uint256) points;

Verwende es innerhalb der bereitgestellten Funktion main:

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

Die Zuweisung ändert nur Schlüssel vier. Schlüssel fünf wurde nie zugewiesen und wird als null gelesen. Eine Zuordnung stellt weder eine Länge noch eine integrierte Liste ihrer Schlüssel bereit; verfolge die Schlüssel separat, wenn eine Anwendung eine Iteration benötigt.

Ein nicht beschriebener Zuordnungsschlüssel wird als Standardwert seines Werttyps gelesen.

challenge icon

Aufgabe

Einfach

Deklariere eine Zuordnung von uint256-Schlüsseln zu uint256-Werten mit dem Namen scores. Weise dem Schlüssel player points zu und gib anschließend scores[player] und scores[player + 1] aus.

Die Tests übergeben Argumente an main in dieser Reihenfolge: uint256 player, uint256 points. Jeder Test beginnt mit einem neuen Vertragszustand.

Verwende console.log für die angeforderte Ausgabe. Gib nur die angeforderten Werte aus, einen pro Zeile, ohne zusätzliche Bezeichnungen, sofern die Aufgabe diese nicht vorgibt.

Probier es selbst

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
    function main(uint256 player, uint256 points) external  {
        // Schreibe deine Lösung hier.
    }
}
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Grundlagen

Übe selbstständig: Solidity-Playground