智能合约分享

[复制链接]
发表于 2026-1-3 23:30:22 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
智能合约练习




一、solidity初学者经典示例代码:

1.存储和检索数据:

  1. // SPDX-License-Identifier: MIT
  2. pragma solidity ^0.8.0; // 声明 Solidity 编译器版本
  3. // 定义一个名为 SimpleStorage 的合约
  4. contract SimpleStorage {
  5.     // 声明一个公共状态变量 data,用于存储一个 256 位的无符号整数
  6.     uint256 public data;
  7.     // 定义一个公共函数 setData,接受一个无符号整数参数 _data
  8.     function setData(uint256 _data) public {
  9.         // 将传入的参数 _data 存储到状态变量 data 中
  10.         data = _data;
  11.     }
  12.     // 定义一个公共视图函数 getData,返回一个无符号整数
  13.     function getData() public view returns (uint256) {
  14.         // 返回当前存储在状态变量 data 中的值
  15.         return data;
  16.     }
  17. }
复制代码
该合约的紧张功能是允许用户存储一个无符号整数并检索该整数。通过调用 setData 函数,用户可以更新存储的数据,而通过调用 getData 函数,用户可以查察当前存储的值。这是一个简朴的存储合约,常用于学习 Solidity 和以太坊的根本概念
2.条件控制:

  1. // SPDX-License-Identifier: MIT
  2. pragma solidity ^0.8.0; // 声明 Solidity 编译器版本
  3. // 定义一个名为 ConditionExample 的合约
  4. contract ConditionExample {
  5.     // 定义一个公共纯函数 checkEven,接受一个无符号整数参数 _number
  6.     function checkEven(uint256 _number) public pure returns (bool) {
  7.         // 使用条件语句检查 _number 是否为偶数
  8.         if (_number % 2 == 0) {
  9.             // 如果 _number 是偶数,返回 true
  10.             return true;
  11.         } else {
  12.             // 如果 _number 不是偶数,返回 false
  13.             return false;
  14.         }
  15.     }
  16. }
复制代码
该合约提供了一个简朴的功能,用于查抄一个数字是否为偶数。通过调用 checkEven 函数,用户可以传入一个无符号整数,合约将返回一个布尔值,指示该数字的偶数性。这是一个根本的示例,展示了怎样在 Solidity 中使用条件语句和函数。
3.数组操纵:

  1. // SPDX-License-Identifier: MIT
  2. pragma solidity ^0.8.0; // 声明 Solidity 编译器版本
  3. // 定义一个名为 ArrayExample 的合约
  4. contract ArrayExample {
  5.    
  6.     // 声明一个公共状态变量 numbers,用于存储一个无符号整数数组
  7.     uint256[] public numbers;
  8.     // 定义一个公共函数 addNumber,接受一个无符号整数参数 _number
  9.     function addNumber(uint256 _number) public {
  10.         // 将 _number 添加到 numbers 数组中
  11.         numbers.push(_number);
  12.     }
  13.     // 定义一个公共视图函数 getNumber,接受一个无符号整数参数 _index
  14.     function getNumber(uint256 _index) public view returns (uint256) {
  15.         // 检查索引 _index 是否有效
  16.         require(_index < numbers.length, "Invalid index.");
  17.         // 返回 num
复制代码
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表