数组
上一节
下一节
数组
如果你想建立一个集合,可以用数组这样的数据类型。数组是一种数据结构,它是存储同类元素的有序集合。
数组中的特定元素由索引访问,索引值从0开始。例如,声明一个数组变量,如 numbers,可以使用 numbers[0] 、numbers[1] … 和 numbers[99] 表示单个变量。
Solidity 支持两种数组:静态数组和动态数组。
// 固定长度为2的静态数组: uint[2] fixedArray; // 动态数组,长度不固定,可以动态添加元素: uint[] dynamicArray;
你也可以建立一个结构体类型的数组。例如,上一章提到的 Book:
Book[] book; // 这是动态数组,我们可以不断添加元素
另外,你可以定义 public 数组, 语法如下:
Person[] public people;
其它的合约可以从这个数组读取数据(但不能写入数据),所以这在合约中是一个有用的保存公共数据的模式。
实战演习
为了把所以的宠物保存在我们的APP里,并且能够让其它APP看到这些宠物,我们需要一个公共数组。
1.创建一个数据类型为 Pet 的结构体数组,用 public 修饰,命名为:pets 。


