道家强调的“无为”,不是无所作为。《道德经》最后一章,最后一句“为而不争”。解释了“无为”不是没有作为,也不是刻意的作为。类似于儒家“可为和不可为”。这放在编程里也是一样的道理。在Solidity的固定数组中,我们也需谨慎它能做些什么,它不能做些什么。缺乏对可为的范围的认识,常常会带来许多不必要的麻烦。

实验目的

1.明白固定数组的相关操作(声明,修改,查看)

2.了解固定数组是否可以改变长度和添加元素。

实验要求

1. 请查看下面的代码,按照注释里的要求补充完整3块代码。补充完成后编译部署,查看结果运行是否正常。

2.请查看最后两个被注释的函数,思考这两个函数是否编译成功。如何将注释去掉,编译检查是否成功。总结Solidity中固定数组的特性。

以下是本次实验所使用到的测试代码,请使用remix编辑器完成该实验

// SPDX-License-Identifier: GPL-3.0
pragma solidity^0.8.0;
contract fixArray{
uint[5] arr = [1,2,3,4,5];
    function Init()public{
   //1.获取并更改数组,要求第一个数据为100;第二个数据为200
    }
    function getArrayContent() public view returns(uint[5] memory){
        return arr;
    }
    function getGrade() public view returns(uint){
        //2.请用for循环计算数组元素相加的和
}
    function getLength() public view returns(uint){
    //3.请返回数组arr的长度
}
//希望修改固定数组arr的长度,是否能修改成功?
    //function changeLength()public{
    //    arr.length = 10;
//}
//希望追加固定数组arr的内容,是否能追加内容?
    //function push()public{
    //    arr.push(6);
    //}
}

下面是本次实验所配套的视频教程: