dart中的枚舉(enum)擴展(extension)


擴展可以讓我們在任何一個類型中添加新的方法。

使用on關鍵詞指定該擴展的作用域。

擴展可以為枚舉類型增加很多便於使用的方法。

///聲明一個枚舉
enum Season { spring, summer, autumn, winter }
void main(){
    //接下來我們可以輸出該枚舉中所有的值
    //[Season.spring, Season.summer, Season.autumn, Season.winter]
    print(Season.values);
}

使用extension為該枚舉添加擴展方法,以便返回改枚舉的值對應的字符串

extension SeasonExtension on Season {
  ///擴展方法,為枚舉的value方法
  /// this會作為擴展的方法參數傳遞,此處的index,是this.index的簡寫
  String get value => ['spring', 'summer', 'autumn', 'winter'][index];
}
void main(){
    //接下來我們可以輸出該枚舉中某個值對應的字符串
    print(Season.summer.value);//summer
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM