Dart泛型

1.方法的泛型

// 泛型不局限于某种类型,还能进行类型的验证
T getData<T>(T value){
  return value;
}

void setData<T>(T value, String name){
  print("${value} ${name}");
}

main(List<String> args) {

  print(getData("name"));  // string类型
  print(getData(123));  // int 类型

  setData("name", "xxx"); // string类型
  setData(123, "xxx"); // int 类型
}

2.类,接口的泛型

// 类的泛型

class Animal<T>{
  T name;
  T printInfo(T val){
    return val;
  }
}

//抽象类的泛型

abstract class AnimalAnother<T>{
  T name;
  void printMsg(T value){
    print(value);
  }
}


//接口的泛型

class C<T> implements AnimalAnother<T>{
  @override
  T name;

  @override
  void printMsg(T value) {
    // TODO: implement printMsg
  }
  
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值