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

0基础学习 Dart 语言

Dart = 关键字 + dart:core +少量核心库

一、Dart语言关键字

1、核心关键字

关键字

作用

var

声明变量(类型可推断)

final

只能赋值一次

const

编译期常量

int / double / num

数值类型

String

字符串

bool

布尔

List

列表

Map

键值对

Set

集合

dynamic

动态类型

Object

所有类的父类

2、控制流关键字

关键字

说明

if / else

条件判断

switch / case

多分支

for / for-in

循环

while / do-while

循环

break

跳出循环

continue

跳过本次循环

return

返回

3、面向对象相关

关键字

说明

class

定义类

extends

继承

implements

实现接口

with

混入(mixin)

super

父类

this

当前对象

new

创建对象(可选)

static

静态成员

abstract

抽象类/方法

override

重写父类方法

4、异步&开发

关键字

说明

async

标记异步函数

await

等待 Future

Future

异步结果

Stream

异步数据流

yield

生成器

sync*/async*

同步/异步生成器

5、错误处理

关键字

说明

try

尝试执行

catch

捕获异常

on

指定异常类型

finally

最终执行

throw

抛出异常

rethrow

重新抛出

6、其他重要关键字

关键字

说明

import

导入库

export

导出库

library

定义库

part/part of

拆分库

typedef

类型别名

enum

枚举

assert

断言

二、Dart 核心库

1、dart:core(最核心)

自动导入,无需手动引入。

常用类

num, int, double String bool List Map Set Iterable DateTime Duration RegExp

常用顶层函数

print() identical(a, b) Object.runtimeType

2、dart:math

需手动导入:

import 'dart:math';

函数 / 常量

说明

sin / cos / tan

三角函数

sqrt

平方根

pow(x, y)

x 的 y 次方

max / min

最大最小值

Random()

随机数

pi

π

e

自然常数

3、dart:async

import 'dart:async';

说明

Future

单次异步结果

Stream

多次异步数据

Completer

手动完成 Future

Timer

定时器

4、dart:collection

增强集合功能

import 'dart:collection';

说明

HashMap

高性能 Map

HashSet

高性能 Set

Queue

队列

LinkedHashMap

保持插入顺序

5、dart:convert

import 'dart:convert';

API

说明

jsonEncode

Dart → JSON

jsonDecode

JSON → Dart

utf8.encode

UTF-8 编码

utf8.decode

UTF-8 解码

6、dart:io(Flutter 不用)

用于文件、网络、进程

import 'dart:io';

说明

File

文件

Directory

目录

HttpClient

HTTP 请求

Socket

TCP

7、dart:type_data

二进制数据处理

import 'dart:typed_data';

说明

Uint8List

无符号 8 位整数

Int32List

32 位整数

ByteData

字节级操作

三、常用库函数速查表(高频)

功能

示例

字符串处理

"hello".toUpperCase()

列表操作

list.add(1)

Map 取值

map['key']

判空

str.isEmpty

类型判断

obj is String

强制转换

obj as String

异步等待

await future

JSON 解析

jsonDecode(str)

http://www.jsqmd.com/news/847605/

相关文章:

  • LinuxCNC性能调优实战:从系统架构到实时性优化的完整指南
  • 从‘算不准’到‘信得过’:LTspice仿真结果靠谱吗?聊聊模型选择与寄生参数设置
  • 做一个 Rust 优化 quiz,背后其实是一堂工程课
  • Claude Code AskUserQuestion 交互式提问机制深度解析
  • 5分钟掌握GoldHEN金手指管理器:PS4游戏修改终极指南
  • FPGA信号发生器设计避坑指南:DDS Compiler IP核里Phase Width到底该设多少?
  • TqApi 初始化参数组合:回测、模拟与实盘怎么配
  • 加州大学圣地亚哥分校揭示大模型其实早就知道什么时候该用工具
  • Windows热键冲突终极解决方案:Hotkey Detective让你告别快捷键失灵
  • 新手入门如何在Taotoken模型广场选择适合自己任务的模型
  • MLX90640官方库在STM32上跑不起来?手把手教你搞定I2C通信那些坑
  • 别再只把JTAG当下载器了!聊聊它在ARM/DSP/FPGA调试中的那些‘隐藏’玩法
  • 缓存:Redis7.0+、多级缓存设计、缓存三大问题解决方案
  • ARM SMMUv3架构里的“快递员”:手把手拆解DTI-ATS与DTI-TBU协议(附官方文档下载)
  • ADI物联网平台实战:从传感器到云端的工业级开发指南
  • 5步掌握12306智能抢票助手:告别手动刷票的烦恼
  • 网盘直链下载助手:九大网盘免费获取真实下载链接的终极解决方案
  • 别再只盯着CS4344了!这5款低成本I2S DAC芯片实测对比(含ES7149/MAX98357A)
  • AI 系统中的过拟合:从直觉到原理
  • 树莓派Zero 2 W转4B扩展板:集成RS485与4G的物联网边缘节点方案
  • d2dx:3大技术突破让20年老游戏在Windows 10重获新生
  • 从SQL Server/MySQL转战GaussDB:一个DBA的gsql命令行实战避坑笔记
  • 避开这3个坑,你的运动想象分类准确率能翻倍:OpenBMI实战经验谈
  • 教程使用Node.js和Taotoken为网站构建一个AI客服接口
  • 从大彩换到迪文串口屏,DMG80480C070_03WTC上手体验与避坑全记录
  • OpenHarmony环境搭建实战:从小凌派开发板入门到系统编译烧录
  • 为团队内部工具配置 Taotoken CLI 实现一键环境统一
  • 德国人工智能研究中心造出了一双“透视眼“
  • MT6737 4G智能模块开发全解析:从硬件设计到量产落地
  • 二氧化碳培养箱百度百科介绍 - 实了个验