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]; } } |
本文链接:
版权声明: 本博客所有文章除特别声明外,均采用 许可协议。转载请注明出处!