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

厦门建设工程招标中心的网站品牌网站建设内容框架

厦门建设工程招标中心的网站,品牌网站建设内容框架,安全员考试报名入口官网,温岭高端网站设计哪家好关于作者: CSDN内容合伙人、技术专家, 从零开始做日活千万级APP,带领团队单日营收超千万。 专注于分享各领域原创系列文章 ,擅长java后端、移动开发、商业化变现、人工智能等,希望大家多多支持。 目录 一、导读二、概览三、简介3.1 var 关键字3.2 dynamic 和 Object3.3 fi…

关于作者: CSDN内容合伙人、技术专家, 从零开始做日活千万级APP,带领团队单日营收超千万。
专注于分享各领域原创系列文章 ,擅长java后端、移动开发、商业化变现、人工智能等,希望大家多多支持。

目录

  • 一、导读
  • 二、概览
  • 三、简介
    • 3.1 var 关键字
    • 3.2 dynamic 和 Object
    • 3.3 final 和 const
    • 3.4 空安全(null-safety)
    • 3.5 函数声明
    • 3.6 函数作为变量
    • 3.7 函数作为参数
    • 3.8 可选的位置参数
    • 3.9 可选的命名参数
    • 3.10 mixin
  • 四、Future 异步支持
    • 4.1 Future.then
    • 4.2 Future.catchError
    • 4.3 Future.whenComplete
    • 4.4 Future.wait
    • 4.5 async/await
  • 五、 Stream
  • 六、 推荐阅读

在这里插入图片描述

一、导读

我们继续总结学习flutter基础知识,温故知新。

本文主要介绍dart语言的基础知识。

二、概览

Dart 在静态语法方面和 Java 非常相似,如类型定义、函数声明、泛型等,
而在动态特性方面又和 JavaScript 很像,如函数式特性、异步支持等。
除了融合 Java 和 JavaScript 语言之所长之外,Dart 也具有一些其他很有表现力的语法,
如可选命名参数、…(级联运算符)和?.(条件成员访问运算符)以及??(判空赋值运算符)

三、简介

Dart 本身是一个强类型语言,任何变量都是有确定类型的

3.1 var 关键字

Dart 中 var 关键字,可以声明一个变量,并赋予一个初始值,

可以接收任何类型的变量,Dart 中 var 变量一旦赋值,类型便会确定,则不能再改变其类型

var t = "hi world";
// 下面代码在dart中会报错,因为变量t的类型已经确定为String,
// 类型一旦确定后则不能再更改其类型。
t = 1000;

对于变量的声明,也可显式的声明类型,比如:

var name = 'Alice'; // 自动推断类型为 String
int age = 25;       // 显式声明类型

3.2 dynamic 和 Object

dynamic 和 Object可以声明一个变量,并赋予一个初始值

Dart 中所有类型都是Object的子类(包括Function和Null),所以任何类型的数据都可以赋值给Object声明的对象。

dynamic与Object声明的变量都可以赋值任意对象,且后期可以改变赋值的类型

dynamic t;              //声明的对象编译器会提供所有可能的组合
Object x;               //声明的对象只能使用 Object 的属性与方法, 否则编译器会报错
t = "hi world";
x = 'Hello Object';
//下面代码没有问题
t = 1000;
x = 1000;

dynamic 的这个特点使得我们在使用它时需要格外注意,这很容易引入一个运行时错误,比如下面代码在编译时不会报错,而在运行时会报错:

print(a.xx);           // a是字符串,没有"xx"属性,编译时不会报错,运行时会报错

3.3 final 和 const

final 关键字声明的变量,只能被赋值一次,且类型不能改变,
const 关键字声明的变量,只能被赋值一次,且类型不能改变,且编译时确定,不能在运行时改变。

//可以省略String这个类型声明
final str = "hi world";
//final String str = "hi world"; const str1 = "hi world";
//const String str1 = "hi world";

3.4 空安全(null-safety)

int i = 8; //默认为不可空,必须在定义时初始化。
int? j; // 定义为可空类型,对于可空变量,我们在使用前必须判空。// 如果我们预期变量不能为空,但在定义时不能确定其初始值,则可以加上late关键字,
// 表示会稍后初始化,但是在正式使用它之前必须得保证初始化过了,否则会报错
late int k;
k=9;

如果一个变量我们定义为可空类型,在某些情况下即使我们给它赋值过了,
但是预处理器仍然有可能识别不出,这时我们就要显式(通过在变量后面加一个”!“符号)告诉预处理器它已经不是null了,比如:

class Test{int? i;Function? fun;say(){if(i!=null) {print(i! * 8); //因为已经判过空,所以能走到这 i 必不为null,如果没有显式申明,则 IDE 会报错}if(fun!=null){fun!(); // 同上}}
}

上面中如果函数变量可空时,调用的时候可以用语法糖:

fun?.call() // fun 不为空时则会被调用

3.5 函数声明

Dart是一种真正的面向对象的语言,所以即使是函数也是对象,并且有一个类型Function。
这意味着函数可以赋值给变量或作为参数传递给其他函数,这是函数式编程的典型特征。

bool isNoble(int atomicNumber) {return _nobleGases[atomicNumber] != null;
}// 对于只包含一个表达式的函数,可以使用简写语法:
bool isNoble (int atomicNumber)=> true ;// Dart函数声明如果没有显式声明返回值类型时会默认当做dynamic处理
// 不指定返回类型,此时默认为dynamic,不是bool
isNoble(int atomicNumber) {return _nobleGases[atomicNumber] != null;
}

typedef bool CALLBACK();//不指定返回类型,此时默认为dynamic,不是bool
isNoble(int atomicNumber) {return

文章转载自:

http://AsuiOGBC.rntyn.cn
http://gU7G8RY9.rntyn.cn
http://WwFjiYZB.rntyn.cn
http://SAlW3Rlt.rntyn.cn
http://GrFG0J8H.rntyn.cn
http://voaZ3OMF.rntyn.cn
http://RYmNsp6J.rntyn.cn
http://qG3A2No1.rntyn.cn
http://jqw6C1GG.rntyn.cn
http://7lHW0VqE.rntyn.cn
http://zOXVvbmz.rntyn.cn
http://7RhSDSVO.rntyn.cn
http://Bekj1r3f.rntyn.cn
http://sctc46yh.rntyn.cn
http://bDjWneYQ.rntyn.cn
http://dpiqp2VE.rntyn.cn
http://lwk9f12N.rntyn.cn
http://7ajjw94j.rntyn.cn
http://vpKJsMZm.rntyn.cn
http://bGt4Pq1l.rntyn.cn
http://ifH72c1v.rntyn.cn
http://DDJs7ATE.rntyn.cn
http://5RnSUdu9.rntyn.cn
http://QB6HHrYh.rntyn.cn
http://gPgFFc4k.rntyn.cn
http://UIa3dTYN.rntyn.cn
http://IRvp3JDx.rntyn.cn
http://3t8Bt5IM.rntyn.cn
http://WY0zPefL.rntyn.cn
http://o4XkcwVM.rntyn.cn
http://www.dtcms.com/wzjs/685269.html

相关文章:

  • 高端摄影网站模板下载微网站 淘宝客
  • 厦门SEO_厦门网站建设昆明好seo怎么做
  • 云南省建设厅标准员网站在线教育网站有哪些
  • Wordpress在中国建站郴州最大的网络科技公司
  • 网站注意事项分销系统搭建
  • 女装网站建设规划书wordpress 交友主题
  • 网站设计上市公司成都中小企业网站建设
  • 西安网站制作资源网站经营与建设
  • 汝州市文明建设门户网站网站备案年审
  • 飞虎队网站建设广州网站建设系统
  • 贵阳网站设计阳光创信好吗网红营销平台
  • 网站建设情况自查报告百度新闻发布平台
  • 网站后台费用wordpress 文本小工具
  • 广州做网站专业公司湖北省建设工程质量安全监督网站
  • 网站建设实验报告手写asp网站搭建教程
  • 网站开发合同封面陈铭生
  • 株洲网站开发公司视频做动图的网站
  • 做神马网站快速排简述营销网站建设策略
  • 咸宁哪个企业没有做网站网站首页添加浮动飘窗
  • 丹东建设工程信息网站网站模块如何添加
  • 东莞营销型手机网站建设网站设计公司产品介绍
  • 福州网站建设价格商标查询网站怎么做
  • 连云港专业做网站wordpress 加密连接
  • 专业网站是什么意思如何自己制作图片
  • 做外贸到什么网站上发布比较好卖游戏辅助的网站怎么建设
  • 广西 南宁 微信微网站开发贵阳网站建设方案维护
  • 内容展示型网站特点专业网站建设推广
  • 常州网站设计公司郑州妇科医院免费咨询
  • 湖南省住房城乡建设网站装修设计用什么软件
  • 网站规划文档oa系统审批流程