泛型

作者: 喜剧收尾_XWX | 来源:发表于2024-01-24 11:12 被阅读0次
    • 方法不指定类型,在调用时自定类型,并且有方法校验
    • 自定义类不指定类型,在创建类的时候定义类型,运行时非改类型会报错

    1.方法泛型

    // 需求 我传入什么类型的值,给我返回什么类型的值
      T getData<T>(T value) {
        return value;
      }
      getData<String>("x");
      getData<int>(123);
    

    2. 自定义类使用泛型

    class MyList<T> {
      List list = <T>[];
      void add(T valse) {
        list.add(valse);
      }
    
      List getList() {
        return list;
      }
    }
    
    void main() {
      //泛型定义普通list
      List list = <String>[];
      list[0] = "1";
      list[1] = "2";
    
      //泛型定义自定义类
      MyList mList = MyList(); //如果这么写,就是任意类型
      mList.add("1");
      mList.add(true);
    
      MyList mList1 = MyList<String>(); //如果这么写,必须穿入String类型
      mList1.add("1");
     // mList1.add(true); //运行会报错
     // mList1.add(2); //运行会报错
    
      runApp(const MyApp());
    }
    
    

    相关文章

      网友评论

          本文标题:泛型

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