メインコンテンツまでスキップ

For and while loop

for loop あるいは while loop は使える。無限ループを作ると必ず fail してすべてが revert されるので気をつけて

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.13;

contract Loop {
// 状態変数
uint public num;

function loop() public returns(uint,uint) {
// for loopのこと
for (uint i; i < 10; i++) {
if (i == 3) {
// 後ろのコードは全部飛ばして次のループへ
continue;
num++;
}
if (i == 5) {
num++;
// ループを脱出する
break;
}
}

// while loopのこと
uint j;
while (j < 10) {
j++; // 10となる
}
return (num,j); // 1, 10
}
}

Remixで作る