美文网首页
Dart语法之枚举和泛型

Dart语法之枚举和泛型

作者: 学到不懂为止 | 来源:发表于2021-11-23 21:32 被阅读0次

    枚举

    • 枚举是一种有穷序列集的数据类型
    • 使用关键字enum定义一个枚举
    • 常用于代替常量,控制语句等
    • 枚举特性
      • index0开始,依次累加
      • 不能指定原始值
      • 不能添加方法
    // 例子
    // 四季季节枚举
    enum Season {
      spring,
      summer,
      autumn,
      winter
    }
    
    void main() {
      var currentSeason = Season.winter;
      // 当前位置 ``index`` 值
      print(currentSeason.index);
    
      switch (currentSeason) {
        case Season.spring:
            print("1-3月");
            break;
        case Season.summer:
            print("4-6月");
            break;
        case Season.autumn:
            print("7-9月");
            break;
        case Season.winter:
            print("10-12月");
            break;
      }
    }
    

    泛型

    • Dart中类型是可选的,可使用泛型限定类型
    • 使用泛型能够有效的减少代码重复
    • 泛型的使用
      • 类的泛型
      • 方法的泛型
    void main() {
      var list = new List<int>();
      list.add(1);
    
      // 类的泛型
      var utils = new Utils<String>();
      utils.put("element");
    
      // 方法的泛型
      var person = new Person();
      person.put<String>("element");
    }
    
    // 类的泛型
    class Utils<T> {
      T element;
    
      void put(T element) {
        this.element = element;
      }
    }
    
    class Person {
      // 方法的泛型
      void put<T>(T element) {
          print("element = $element");
      }
    }
    
    

    相关文章

      网友评论

          本文标题:Dart语法之枚举和泛型

          本文链接:https://www.haomeiwen.com/subject/xjumtrtx.html