【Solidity】三項演算子の書き方は?

Solidityにおける三項演算子の書き方について解説します。

構文

Solidityにおける三項演算子の書き方ですが、以下のようになります。

条件 ? 条件がtrueの場合の値 : 条件がfalseの場合の値

サンプルコード

// SPDX-License-Identifier: GPL-3.0

pragma solidity >=0.7.0 <0.9.0;

contract Test {

    function showIsAdult(uint age) public pure returns(string memory) {
        string memory attribute = age >= 20 ? unicode"成人" : unicode"未成年"; // 三項演算子
        return string(abi.encodePacked(unicode"あなたは", attribute, unicode"です。"));
    }

}

Solidityにおける三項演算子も他のプログラミング言語と同じですね。ちなみに、サンプルコード内にある文字列前の“unicode”というのは、日本語(マルチバイト文字)を扱うためのプレフィックスです。

タイトルとURLをコピーしました