solidity智能合约[26]-mapping
mapping是一张表,存储key-value对。更准确的说,mapping是一张hash映射表,内部并没有存储真实的key值。
mapping用例下面的案例模拟了一个登陆网站,将地址与id绑定在一起。id又与姓名绑定在一起。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
pragma solidity ^0.4.23;
contract mappingTest{
uint id = 0;
mapping(address =>uint) idmap;//将地址与id绑定在一起
mapping(uint =>string) namemap;//id又与姓名绑定在一起。
//注册
function regist(string name) public{
address acount = msg.sender;
id++;
idmap[acount] = id;
namemap[id] = name;
}
//根据地址获取id
function getIdByAddress(address _address) public view returns(uint){
return idmap[_address];
}
//根据id获取名字
function getNameByID(uint _id) public view returns(string){
return namemap[_id];
}
}
本文链接:https://dreamerjonson.com/2018/11/20/solidity-26-mapping/
版权声明:本博客所有文章除特别声明外,均采用CC BY 4.0 CN协议许可协议。转载请注明出处!
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。