[智能合约]:类型03 枚举,结构体和映射

2019-02-19  本文已影响0人  jea的笔记本

接下来看Solidity剩下的三种变量的类型:枚举,结构体和映射。


1.枚举

枚举是一个自定义的整型,有一种给数字赋予名字的感觉。在Solidity中,会根据枚举中元素的个数对应到相应的uint类型。关键字是enum

contract Struct {
    
    enum Number {Zero, One, Two, Three}
    Number num;
    
    function setNum(Number n) public {
        num = n;
    }
    
    function getNum() view public returns(Number){
        return num;
    }
}

在上述的例子中:


2.结构体

结构体,是一些状态变量的集合。关键字是struct

struct Person {
    string name;
    uint age;
}
    
Person p = Person({name:"jea", age:19});
Person p1 = Person("jea",19);

3.映射

映射,是key-value的对应关系,也可以称为字典类型。关键字是mapping

mapping (string => uint) strToUint;
    
function setMap(string memory _s, uint _u) public {
    strToUint[_s] = _u;
}
    
function getMap(string memory _s) view public returns(uint) {
    return strToUint[_s];
}
上一篇下一篇

猜你喜欢

热点阅读