Dart 中 的var 、 final 、dynamic 、 const

在Dart中所有未初始化的变量默认值均为null。

  • final必须初始化,只能赋值一次,且不能修改值,赋值可以是常量也可以是变量。

  • const必须初始化,只能赋值一次,且不能修改值,赋值必须是常量。

    • const必须根据可在编译时计算的数据创建它们。
    • const对象无法访问运行时需要计算的任何内容。
    • 使用const关键字声明的变量是隐式final的。
    • 可以把const 常量赋给 final 变量,反过来不可以。
    • final和const可以与变量的数据类型一起使用,也可以与 var 关键字一起使用
  • var 编译时确定的类型

  • dynamic 运行时确定类型

    编译期会自动匹配var 变量的实际类型,并用实际类型来替换该变量的申明,这看上去就好像我们在编码的时候是用实际类型进行申明的。而dynamic被编译后,实际是一个 object类型,只不过编译器会对dynamic类型进行特殊处理,让它在编译期间不进行任何的类型检查,而是将类型检查放到了运行期。

参考文章:(https://blog.csdn.net/sinat_31057219/article/details/9020750

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dingwen_blog

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值