国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

solidity定長(zhǎng)數(shù)組和動(dòng)態(tài)數(shù)組

tinysun1234 / 1329人閱讀

摘要:固定長(zhǎng)度的數(shù)組固定長(zhǎng)度數(shù)組聲明直接在定義數(shù)組的時(shí)候聲明固定長(zhǎng)度數(shù)組的值可通過數(shù)組的屬性來獲得數(shù)組的長(zhǎng)度,進(jìn)而進(jìn)行遍歷操作。動(dòng)態(tài)數(shù)組獲取長(zhǎng)度方式與靜態(tài)數(shù)組一直,但動(dòng)態(tài)數(shù)組可以直接修改數(shù)組長(zhǎng)度,而不會(huì)出現(xiàn)編譯不通過的情況。

固定長(zhǎng)度的數(shù)組 固定長(zhǎng)度數(shù)組聲明

直接在定義數(shù)組的時(shí)候聲明固定長(zhǎng)度數(shù)組的值:

uint[5] fixedArr = [1,2,3,4,5];

可通過數(shù)組的length屬性來獲得數(shù)組的長(zhǎng)度,進(jìn)而進(jìn)行遍歷操作。

// 通過for循環(huán)計(jì)算數(shù)組值的總和
function sum() public view returns (uint) {
    uint total = 0;
    for(uint i = 0; i < fixedArr.length; i++) {
        total += fixedArr[i];
    }
    return total;
}

固定長(zhǎng)度數(shù)組無法修改數(shù)組長(zhǎng)度,否則編譯直接會(huì)報(bào)錯(cuò):

TypeError: Expression has to be an lvalue.
fixedArr.length = len;

但可對(duì)數(shù)組中的值進(jìn)行修改。

function updateValue(uint index,uint value) public {
    fixedArr[index] = value;
}
可變長(zhǎng)度數(shù)組

可變長(zhǎng)度類型數(shù)組的聲明:

uint[] unfixedArr = [1,2,3,4,5];
// 或
uint[] unfixedArr;

可變長(zhǎng)度數(shù)組也可通過同樣的方法進(jìn)行遍歷求和:

// 通過for循環(huán)計(jì)算數(shù)組值的總和
function sum() public view returns (uint) {
    uint total = 0;
    for(uint i = 0; i < unfixedArr.length; i++) {
        total += unfixedArr[i];
    }
    return total;
}

其中第二種情況未聲明數(shù)組內(nèi)容時(shí),可通過直接通過push向數(shù)組中添加值,或初始化一個(gè)數(shù)組然后再賦值。

unfixedArr.push(1);
或
unfixedArr = new uint[](1); 
unfixedArr[0] = 0;

其中第二種方法通過索引進(jìn)行設(shè)置值時(shí),該數(shù)組必須先被初始化,否則會(huì)拋出異常。

動(dòng)態(tài)數(shù)組獲取長(zhǎng)度方式與靜態(tài)數(shù)組一直,但動(dòng)態(tài)數(shù)組可以直接修改數(shù)組長(zhǎng)度,而不會(huì)出現(xiàn)編譯不通過的情況。

unfixedArr.length = len;

上面已經(jīng)可以看到,可以通過push方法向動(dòng)態(tài)數(shù)組中添加元素。

原文鏈接:https://www.choupangxia.com/2...

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/75760.html

相關(guān)文章

  • 智能合約語言Solidity教程系列5 - 數(shù)組介紹

    摘要:還需注意的一點(diǎn)是,定長(zhǎng)數(shù)組,不能與變長(zhǎng)數(shù)組相互賦值,我們來看下面的代碼無法編譯已經(jīng)計(jì)劃在未來移除這樣的限制。的變長(zhǎng)數(shù)組,可以通過給賦值調(diào)整數(shù)組長(zhǎng)度。的變長(zhǎng)數(shù)組不支持。 本文首發(fā)于深入淺出區(qū)塊鏈社區(qū)原文鏈接:智能合約語言Solidity教程系列5 - 數(shù)組介紹原文已更新,請(qǐng)讀者前往原文閱讀 Solidity 教程系列第5篇 - Solidity 數(shù)組介紹。Solidity 系列完整的文章...

    draveness 評(píng)論0 收藏0
  • 智能合約語言Solidity教程系列1 - 類型介紹

    摘要:本文首發(fā)于深入淺出區(qū)塊鏈社區(qū)原文鏈接智能合約語言教程系列地址類型介紹原文已更新,請(qǐng)讀者前往原文閱讀現(xiàn)在的中文文檔,要么翻譯的太爛,要么太舊,決定重新翻譯下。枚舉類型應(yīng)至少有一名成員。 本文首發(fā)于深入淺出區(qū)塊鏈社區(qū)原文鏈接:智能合約語言 Solidity 教程系列2 - 地址類型介紹原文已更新,請(qǐng)讀者前往原文閱讀 現(xiàn)在的Solidity中文文檔,要么翻譯的太爛,要么太舊,決定重新翻譯下。...

    andycall 評(píng)論0 收藏0
  • solidity的delete操作匯總

    摘要:刪除枚舉類型時(shí),會(huì)將其值重置為序號(hào)為的值。刪除結(jié)構(gòu)體刪除結(jié)構(gòu)體,會(huì)將所有成員變量置為初值。刪除數(shù)組對(duì)于定長(zhǎng)數(shù)組,刪除時(shí),是將數(shù)組內(nèi)所有元素置為初值。注意事項(xiàng)刪除的本質(zhì)是初始化變量。但可對(duì)其引用的對(duì)象進(jìn)行操作。 簡(jiǎn)介 Solidity中的特殊操作符delete用于釋放空間,為鼓勵(lì)主動(dòng)對(duì)空間的回收,釋放空間將會(huì)返還一些gas。 delete操作符可以用于任何變量,將其設(shè)置成默認(rèn)值0。 刪除...

    Eminjannn 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<