编写合约
-
一个简单的Solidity智能合约 Usermap 用于在以太坊区块链上管理用户的ID和名称:
- 数据存储 : 使用了
mapping
和array
两种方式存储用户信息。 - addUser : 添加用户(
id
和对应的用户名name
)到区块链。 - getid : 根据用户
id
获取用户名。该函数是view
类型,表示它不会修改区块链状态。
- 数据存储 : 使用了
javascript
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.22;
contract Usermap {
mapping(uint256 => string) public id_of_name;
struct User {
uint256 id;
string name;
}
User[] public users;
function addUser(uint _id,string memory _name) public {
users.push(User(_id, _name));
id_of_name[_id] = _name;
}
function getid(uint256 _id) public view returns (string memory) {
return id_of_name[_id];
}
}
编译
部署
- 链接钱包
- 支付合约部署的gas费用
部署完成
- 可在IDE中直接调用测试:
- 合约地址为
0xb1771477289aFFC26314C500371434f812211602
,可在https://sepolia.basescan.org/中查看所有交易