当前位置: 首页 > news >正文

云浮新兴县做网站漯河住房建设局网站

云浮新兴县做网站,漯河住房建设局网站,网站制作成功后怎么使用,vps内存wordpress优化Flutter基础 第六章 Flutter关键字var、final、const、late的区别与使用 文章目录Flutter基础前言一、var1.var是什么?2.var如何使用3.var自动推断类型4.var可以再次赋值5.var指定类型二、final1.final是什么?2.final声明但不赋值3.final赋值多次4.final正常使用三、const1.…

Flutter基础

第六章 Flutter关键字var、final、const、late的区别与使用


文章目录

  • Flutter基础
  • 前言
  • 一、var
    • 1.var是什么?
    • 2.var如何使用
    • 3.var自动推断类型
    • 4.var可以再次赋值
    • 5.var指定类型
  • 二、final
    • 1.final是什么?
    • 2.final声明但不赋值
    • 3.final赋值多次
    • 4.final正常使用
  • 三、const
    • 1.const是什么?
    • 2.const声明但不赋值
    • 3.const赋值多次
    • 4.const正常使用
  • 三、late
    • 1.late是什么?
    • 2.late声明但不赋值
    • 3.const赋值多次
    • 4.const正常使用
  • 总结


前言

在使用flutter开发已经有一段时间了,在之前都是快速开发,没有时间去复盘自己的知识体系,现在就从flutter的基本语法开始,一步步分析flutter涉及到的细节问题,希望对你有所帮助。


一、var

1.var是什么?

  • var就是定义变量的意思。
  • var定义的变量会自动推断类型
  • dart 中使用 var声明变量,可以赋值不同类型的值,会自动推断变量的类型。
  • var 声明的变量如果没有初始化,那么它的值是nil

2.var如何使用

var 声明的变量,如果没有指定类型,是一个dynamic动态类型

var a;
print("打印==${a.runtimeType}");//打印==Nullvar b;
b = "hello world";
print("打印==$b");//打印==hello world
print("打印==${b.runtimeType}");//打印==String

3.var自动推断类型

var b;
b = true;
print("打印==$b"); //打印==true
print("打印==${b.runtimeType}"); //打印==bool

4.var可以再次赋值

本来是bool类型的,后面变成了int类型

var b;
b = true;
print("打印==$b"); //打印==true
print("打印==${b.runtimeType}"); //打印==boolb = 100;
print("打印==$b"); //打印==100
print("打印==${b.runtimeType}"); //打印==int

5.var指定类型

在声明时候就赋值,则相当于指定类型,如果再赋值其他类型会报错

var b = 100;
b = true;//Error: A value of type 'bool' can't be assigned to a variable of type 'int'.b = true;print("打印==$b"); //打印==true
print("打印==${b.runtimeType}"); //打印==bool

二、final

1.final是什么?

  • 使用final声明的变量,它只能赋值一次。
  • final修饰的是一个最终的变量,不能再次赋值,否则会报错
  • 可以先声明再次赋值,但是只能赋值一次

2.final声明但不赋值

final声明的变量,如果不赋值,则无法使用,如runtimeType等方法。

final a;//The final variable 'a' can't be read because it's potentially unassigned at this point
print("打印==${a.runtimeType}");//报错

3.final赋值多次

final声明的变量,不能多次赋值,否则报错。

final a;
a = 100;
a = 'hello world';//Final variable 'a' might already be assigned at this point.a = 'hello world';
print("打印==${a.runtimeType}"); //

4.final正常使用

final a = 100;
print("打印==$a"); //打印==100
print("打印==${a.runtimeType}"); //打印==int

三、const

1.const是什么?

  • const修饰常量,声明的时候就得赋值,这也是和变量最大的区别

2.const声明但不赋值

声明不赋值会报错:

///lib/modules/dart/xxx.dart:20:11: Error: The const variable 'a' must be initialized.
/// Try adding an initializer ('= expression') to the declaration.
///     const a;
const a;
print("打印==$a"); //打印==100
print("打印==${a.runtimeType}"); //打印==int

3.const赋值多次

final声明的变量,不能多次赋值,否则报错。

///Error: Can't assign to the const variable 'a'.
///     a = 200;
const a = 100;
a = 200;
print("打印==$a"); //打印==100
print("打印==${a.runtimeType}"); //打印==int

4.const正常使用

const a = 100;
print("打印==$a"); //打印==100
print("打印==${a.runtimeType}"); //打印==int

三、late

1.late是什么?

  • Dart 2.12引入了late修饰符
  • 显式声明一个非空的变量,但不初始化
  • 如果不加late关键字,类实例化时此值是不确定的,无法通过静态检查,加上late关键字可以通过静态检查,但由此会带来运行时风险
  • 延迟初始化变量。如果这个变量没有被使用的话就不会被初始化,初始化语句不会执行。

2.late声明但不赋值

声明不赋值会报错:

///Error: Late variable 'a' without initializer is definitely unassigned.
///     print("打印==${a.runtimeType}"); //打印==int
late int a;
print("打印==$a"); //打印==100
print("打印==${a.runtimeType}"); //打印==int

3.const赋值多次

已经指定了类型,不能赋值别的类型

late int a;
a = 100;
a = 300;
print("打印==$a"); //打印==300
print("打印==${a.runtimeType}"); //打印==int

4.const正常使用

late int a;
a = 100;
print("打印==$a"); //打印==100
print("打印==${a.runtimeType}"); //打印==int

总结

以上就是今天要讲的内容,本文仅仅简单介绍了var、final、const、late的使用。希望文章对你有所帮助,后续继续完善。

http://www.yayakq.cn/news/677310/

相关文章:

  • 建设银行网站下载中心大连建设工程信息网防水
  • 网站建设合同免费下载网站建设 交易保障
  • 网站建设给客户看的ppt佛山做网站建设价格
  • 杭州网站建设公司代理加盟做网站ps图片都是多大
  • 51做网站wordpress左右滑动相册
  • 网站被降权后怎么办一个小程序制作价格
  • 网站开发毕业设计开题报告厚街做网站的公司
  • 石家庄建设网站公司奢侈品
  • 全国二级建造师注册信息查询网站北京的招聘网站有哪些
  • 开发网站网页归档企业网站建设重要性
  • 资兴网站设计三网合一网站开发
  • 重庆巫山网站设计公司英文网站收录提交
  • 苏州网站建设智能 乐云践新做外贸网站需要什么条件
  • 网站备案信息查询申请表黔江网站制作
  • 网站后台怎么上传图片产品学前端好找工作吗
  • 做网站wamp和xamp伊春网络运营推广
  • 廊坊网站推广范湖网站建设团队
  • 做做网站2023网页设计表格模板源代码
  • 甘肃省建设厅执业资格注册中心网站网络搭建百度百科
  • 做网站优化期间能收到网站吗广东东莞营销
  • 亚马逊店铺网站建设费用设计邦中国官网
  • 教育培训网站案例梭子手做鱼网站
  • 做金融量化的网站建设工程挂网是在那个网站
  • 学校网站建设的技术方案网站信息备案查询系统
  • 淘宝客做网站自动更新网站建设开发服务费税率
  • 国外网站设计欣赏上海 网站备案代理
  • 个人博客网站模板wordpresswordpress 链接地址
  • 信阳做网站的广告行业包括网站建设吗
  • 婚纱网站开发html网站模板 免费
  • 苏州网站建设托管手机怎么查看网站代码实现的