StarknetAstro

StarknetAstro

13_Cairo1.0のMap(マップ)

13_Cairo1.0 中の Map (マップ)#

この記事で使用されている Cairo コンパイラのバージョン:2.0.0-rc0。Cairo は急速に更新されているため、異なるバージョンでは文法がわずかに異なる場合があります。将来的には、記事の内容を安定したバージョンに更新します。

基本的な使い方#

Map は辞書(dictionary)とも呼ばれ、Cairo では辞書として扱われます。基本的な使い方には、データの作成、キーと値の挿入、データの読み取りが含まれます。いくつかの例を見てみましょう:

use core::debug::PrintTrait;
use dict::Felt252DictTrait;
use traits::Default;

fn main(){
    let mut map : Felt252Dict<felt252> = Default::default();
    map.insert(1,'shalom');
    map[1].print();
}

まず、辞書を作成するには、Default trait を使用する必要があります。これは初期状態の辞書を返すものであり、型は Felt252Dict です。また、辞書内の変数の型を指定する必要もあります。上記の作成された map の型は Felt252Dict<felt252> です。

Felt252Dict は現在 Cairo でサポートされている辞書のタイプであり、キーとして felt252 型の変数のみを使用できます。値は複数の型にすることができます:u8, u16, u32, u64, u128, felt252。そのため、Felt252Dict と名付けられています。

キーと値の挿入は、insert (key, value) メソッドを使用します。最初のパラメータはキーであり、2 番目のパラメータは値です。

データの読み取りは、中括弧にキーを追加することで行います map[key]

読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。