Dart(二)—循环表达式、List、Set及Map的常用属性和方法

theme: geek-blackDart(一)—变量、常量、基本类型、运算符、条件判断以及类型转换 Dart的循环表达式for循环for (int i = 1; i<=100; i++) { print(i);}也可以写成: for (var i = 1; i<=10; i++) { print(i);}对于List的遍历我们可以这样做: var lis...

dart使用技巧集合【02】

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第26天,点击查看活动详情 在 Dart(和 Flutter)中使用 For 循环for循环是包括 Dart 在内的许多编程语言中最重要的特性之一。 1. for-in 语法void main() { final myList = [1, 2, 3, 4, 5, 6, 7, 8, 9]; for (var...

Dart 异常详解

highlight: androidstudio theme: channing-cyan持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第13天,点击查看活动详情 异常这个机制是必须存在的,大部分的高级语言都会带有的异常检查机制或者错误检查机制的,如果没有异常和错误检查机制的话,那么出现了问题那么程序就运行不了了,那岂不是很尴尬,或者如果出现了超时异常这...

使用 DartPad 制作代码实践教程

DartPad 是一个开源的、在浏览器中体验和运行 Dart 编程语言的线上编辑器,目标是为了帮助开发者更好地了解 Dart 编程语言以及 Flutter 应用开发。 DartPad 项目起始于 2015 年,最初只是一个在线的编译器,可以编译、分析和显示 Dart 代码运行结果。后期主要进行过几次重要的改进: 2019 年 12 月,新版的 DartPad 发布,不仅推出了...

【Flutter从0到1】番茄计时APP:Dart 语言速览进阶篇

theme: condensed-night-purple持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第10天,点击查看活动详情 目录1.【Flutter从0到1】番茄计时APP:项目筹备 2.【Flutter从0到1】番茄计时APP:原型图+功能梳理 3.【Flutter从0到1】番茄计时APP:环境搭建 4.【Flutter从0到1】番茄计时APP:...

Dart中的event loop

在 Dart并发编程一文中,我们了解到,在isolate,通过event-loop来处理event-queue中的事件的。 本篇文章我们一起来探讨Dart中的event-loop。 Dart’s event loop每一个isolate都有一个eventloop,eventloop拥有两个队列:eventqueue和microtaskqueue。 event queue: 包...

Dart并发编程: isolate

我们都知道,在Flutter开发中,App是单线程运行的,那既然是单线程运行,那么它能否做到并发处理多个任务呢?答案是可以的,首先,我们先来了解isolate。 isolates之前从事iOS开发,或者其他平台App开发的人员,在App运行时,都会有一个主线程,可以开启多个子线程进行多个任务并发执行。在Dart中,所有代码都运行在isolate中,每个isolate都有它们各自...

理解InheritedWidget及应用

本篇文章主要介绍Flutter中的InheritedWidget小部件,以及其官方小部件库中的应用。 官方介绍关于InheritedWidget,在官方文档中是这样描述的: 1,可以沿着树向下传递信息。2,可以使用 BuildContext.dependOnInheritedWidgetOfExactType方法,获取最近的指定类型的inherited widget。3,当i...

Dart中抽象类,被实现和被继承有什么区别?

抽象类可以有默认的实现方法当抽象类当做接口的时候,实现抽象方法,必须重写所有方法当抽象类当做类的时候,继承的时候,必须重新抽象方法 abstract class AbsClass { void operator(); /// 抽象类方法可以有自己的实现 void doSomething() { print(doSomething); }}// 继承抽象类class AbsCl...