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

(五)Dart 数据类型

Dart 数据类型

常用数据类型

Numbers(数值)

  • int:表示整数。
  • double:表示浮点数。

Strings(字符串)

  • String:表示字符串。

Booleans(布尔)

  • bool:表示布尔值,值为 truefalse

List(数组)

在 Dart 中,数组是列表对象,通常称为列表。

Maps(字典)

Map 是一个键值对相关的对象,键和值可以是任何类型的对象。每个键只出现一次,而一个值可以出现多次。

项目中用不到的数据类型

Runes

Rune 是 UTF-32 编码的字符串,可以通过文字转换成符号表情或者代表特定的文字。

main() {var clapping = '123123';print(clapping);print(clapping.codeUnits);print(clapping.runes.toList());Runes input = new Runes('111111');print(new String.fromCharCodes(input));
}

Symbols

Symbol 对象表示在 Dart 程序中声明的运算符或标识符。入门阶段不需要了解这东西,可能永远也用不上。


Dart 数据类型示例代码

字符串类型

void main() {// 1、字符串定义的几种方式// var str1 = 'this is str1';// var str2 = "this is str2";// print(str1);// print(str2);// String str1 = 'this is str1';// String str2 = "this is str2";// print(str1);// print(str2);// String str1 = '''this is str1// this is str1// this is str1// ''';// print(str1);// String str1 = """// this is str1// this is str1// this is str1// """;// print(str1);// 2、字符串的拼接String str1 = '你好';String str2 = 'Dart';// print("$str1 $str2");print(str1 + str2);print(str1 + " " + str2);
}

数值类型

void main() {// 1、int 必须是整型int a = 123;a = 45;print(a);// 2、double 既可以是整型也可以是浮点型double b = 23.5;b = 24;print(b);// 3、运算符// + - * / %var c = a + b;print(c);
}

布尔类型

void main() {// 1、bool// bool flag1 = true;// print(flag1);// bool flag2 = false;// print(flag2);// 2、条件判断语句// var flag = true;// if (flag) {//   print('真');// } else {//   print('假');// }// var a = 123;// var b = '123';// if (a == b) {//   print('a=b');// } else {//   print('a!=b');// }var a = 123;var b = 123;if (a == b) {print('a=b');} else {print('a!=b');}
}

List(数组/集合)

void main() {// 1、第一种定义 List 的方式// var l1 = ["张三", 20, true];// print(l1);  // [张三, 20, true]// print(l1.length);  // 3// print(l1[0]); // 张三// print(l1[1]); // 20// 2、第二种定义 List 的方式 指定类型// var l2 = <String>["张三", "李四"];// print(l2);// var l3 = <int>[12, 30];// print(l3);// 3、第三种定义 List 的方式 增加数据,通过 [] 创建的集合它的容量可以变化// var l4 = [];// print(l4);// print(l4.length);// l4.add("张三");// l4.add("李四");// l4.add(20);// print(l4);// print(l4.length);// var l5 = ["张三", 20, true];// l5.add("李四");// l5.add("zhaosi");// print(l5);// 4、第四种定义 List 的方式// var l6 = new List();  // 在新版本的 Dart 里面没法使用这个方法了// var l6 = List.filled(2, "");  // 创建一个固定长度的集合// print(l6);// print(l6[0]);// l6[0] = "张三";   // 修改集合的内容// l6[1] = "李四";// print(l6);  // [张三, 李四]// l6.add("王五");  // 错误写法 通过 List.filled 创建的集合长度是固定,没法增加数据// 通过 List.filled 创建的集合长度是固定// var l6 = List.filled(2, "");// print(l6.length);// l6.length = 0;  // 修改集合的长度   报错// var l7 = <String>["张三", "李四"];// print(l7.length);  // 2// l7.length = 0;  // 可以改变的// print(l7);  // []var l8 = List<String>.filled(2, "");l8[0] = "string";// l8[0] = 222;print(l8);
}

Maps(字典)

void main() {// 第一种定义 Maps 的方式// var person = {//   "name": "张三",//   "age": 20,//   "work": ["程序员", "送外卖"]// };// print(person);// print(person["name"]);// print(person["age"]);// print(person["work"]);// 第二种定义 Maps 的方式var p = new Map();p["name"] = "李四";p["age"] = 22;p["work"] = ["程序员", "送外卖"];print(p);print(p["age"]);
}

相关文章:

(五)Dart 数据类型

Dart 数据类型 常用数据类型 Numbers&#xff08;数值&#xff09; int&#xff1a;表示整数。double&#xff1a;表示浮点数。 Strings&#xff08;字符串&#xff09; String&#xff1a;表示字符串。 Booleans&#xff08;布尔&#xff09; bool&#xff1a;表示布尔…...

3.数据结构-串、数组和广义表

串、数组和广义表 3.1串3.1.1串的类型定义、存储结构及其运算串的顺序存储串的堆式顺序存储结构串的链式存储 3.1.2 串的模式匹配算法BF算法*KMP算法&#xff08;待更新&#xff09; 3.2数组3.2.1数组的顺序存储3.2.2特殊矩阵的压缩存储对称矩阵三角矩阵对角矩阵 3.3广义表*案例…...

苹果电脑杀毒软件CleanMyMac

杀毒软件在苹果家族中是一个小众软件&#xff0c;百度搜索苹果电脑杀毒软件&#xff0c;可能各种杀软良莠不齐&#xff0c;因为在这个市场非常小&#xff0c;绝大多数都是冲着“清理”去的&#xff0c;而不是杀毒。最近测试了一款Mac电脑杀毒软件&#xff0c;杀毒效果也是一般般…...

Day16:二叉搜索树和双向链表

将一个 二叉搜索树 就地转化为一个 已排序的双向循环链表 。 对于双向循环列表&#xff0c;你可以将左右孩子指针作为双向循环链表的前驱和后继指针&#xff0c;第一个节点的前驱是最后一个节点&#xff0c;最后一个节点的后继是第一个节点。 特别地&#xff0c;我们希望可以…...

Qt QML实现弹球消砖块小游戏

前言 弹球消砖块游戏想必大家都玩过&#xff0c;很简单的小游戏&#xff0c;通过移动挡板反弹下落的小球&#xff0c;然后撞击砖块将其消除。本文使用QML来简单实现这个小游戏。 效果图&#xff1a; 正文 代码目录结构如下&#xff1a; 首先是小球部分&#xff0c;逻辑比较麻…...

如何在实际应用中测量和调整直线导轨的预紧力?

在实际应用中&#xff0c;准确测量和调整直线导轨的预紧力对于保证设备的性能和精度至关重要&#xff0c;但测量和调整直线导轨的预紧力需要根据具体的导轨型号和结构来选择合适的方法。以下是一些常见的测量和调整方法&#xff1a; 1、使用压力传感器&#xff1a;在一些先进的…...

lws-minimal-ws-server前端分析

index.html index.html是前端入口 <html><head><meta charsetutf-8 http-equiv"Content-Language" content"en"/><!-- 引入js --><script src"/example.js"></script></head><body><img s…...

YOLO11 使用入门

YOLO12 使用入门 1. 源码下载2. 权重下载3. 环境配置4. 例程测试4.1. 目标检测4.1.1. 源文件 model4.1.2. 结果Results4.1.3. 边界框 Boxes 2.2. 图像分割4.2.1. 推理 model.predict4.2.2. 掩码 Masks 1. 源码下载 之前介绍了《目标检测 YOLOv5 使用入门》 现在是 2024.12.2…...

汽车感性负载-智能高边钳位能量计算

随着汽车电子技术的发展&#xff0c;新的电子电气架构下&#xff0c;越来越多的执行部件在车身出现&#xff0c;比如电磁阀、风机、水泵、油泵、雨刮继电器等常用的执行器&#xff0c; 它们一般都表现为感性特点。驱动这些负载的最简单和最常见的方法是将它们连接到高边侧开关(…...

springboot树形结构 支持模糊查询,返回匹配节点和父节点,其他节点不返回

package com.me.meterdemo.ds; import java.util.ArrayList; import java.util.List;public class TreeNode {private Long id;private String name;private Long parentId;private List<TreeNode> children new ArrayList<>();// 构造方法public TreeNode(Long i…...

pythonSTL---sys

sys 是 Python 标准库中的一个内置模块&#xff0c;它提供了许多与 Python 解释器和系统环境进行交互的功能。 sys方法 1. 导入 sys 模块 在使用 sys 库的功能之前&#xff0c;需要先导入它&#xff1a; import sys2. 命令行参数 (sys.argv) sys.argv 是一个包含命令行参数…...

基于Python+Flask+MySQL+HTML的爬取豆瓣电影top-250数据并进行可视化的数据可视化平台

FlaskMySQLHTML 项目采用前后端分离技术&#xff0c;包含完整的前端&#xff0c;以flask作为后端 Pyecharts、jieba进行前端图表展示 通过MySQL收集格列数据 通过Pyecharts制作数据图表 这是博主b站发布的详细讲解&#xff0c;感兴趣的可以去观看&#xff1a;【Python爬虫可…...

Python在数据处理中的应用:从入门到精通

活动发起人小虚竹 想对你说&#xff1a; 这是一个以写作博客为目的的创作活动&#xff0c;旨在鼓励大学生博主们挖掘自己的创作潜能&#xff0c;展现自己的写作才华。如果你是一位热爱写作的、想要展现自己创作才华的小伙伴&#xff0c;那么&#xff0c;快来参加吧&#xff01…...

七大常用智能家居协议对比

如果您不知道在项目中使用哪种智能家居通信协议&#xff0c;那么进入智能家居行业可能会很困难。如果没有合适的协议将其集成到智能家居生态系统中&#xff0c;智能家居设备将无法正常工作。否则&#xff0c;您将面临硬件和软件无法满足最终用户期望的风险。协议选择不当可能会…...

996引擎-问题处理:缺失特效分割文件 ModelAtlasSplitConfigs

通常我们买的资源都是带会 ModelAtlasSplitConfigs.txt 或 sceneAtlasSplitConfigs.txt 的 但有时确实找不到的话&#xff0c;是可以用996工具生成的&#xff1a;...

异步加载错误如何解决

首先是 提供两张图 如果数据过多的情况下我在所内和住家形式频繁的来回切换 导致数据展示的不一样 大家是不是有这样的问题 这个是导致了数据展示有问题的情况 住家的情况本来是没有几层的 下面我帮大家解决一下 // 防止异步延迟 const Noop () > { } const lhl (resDa…...

R语言零基础系列教程-01-R语言初识与学习路线

代码、讲义、软件回复【R语言01】获取。 R语言初识 R是一个开放的统计编程环境&#xff0c;是一门用于统计计算和作图的语言。“一切皆是对象”&#xff0c;数据、函数、运算符、环境等等都是对象。易学&#xff0c;代码像伪代码一样简洁&#xff0c;可读性高强大的统计和可视…...

C 语言实现彩票模拟:指针与数组的巧妙运用

在 C 语言编程学习中,通过实践项目来掌握知识是非常有效的途径。本次我们聚焦于一个彩票模拟程序的实现,这不仅能让大家巩固 C 语言的基础概念,还能深入理解指针和数组在实际场景中的运用。 一、彩票模拟程序需求分析 彩票模拟程序主要模拟真实彩票抽奖的过程。具体来说,需…...

自动化测试-网页聊天室

项目介绍&#xff1a; 针对基于WebSocket协议的网页端即时通讯系统&#xff0c;主导设计并实施全流程自动化测试方案。通过构建模块化测试框架&#xff0c;完成对核心业务场景&#xff08;用户登录鉴权、消息同步、实时聊天等&#xff09;的自动化验证&#xff0c;最终达成测试…...

WPF CommunityToolkit.MVVM库的简单使用

CommunityToolkit.MVVM 是 .NET 社区工具包中的一部分&#xff0c;它为实现 MVVM&#xff08;Model-View-ViewModel&#xff09;模式提供了一系列实用的特性和工具&#xff0c;能帮助开发者更高效地构建 WPF、UWP、MAUI 等应用程序。以下是关于它的详细使用介绍&#xff1a; 1…...

ffmpeg面试题整理

1. 基础概念 问题&#xff1a;FFmpeg 是什么&#xff1f;它的核心功能有哪些&#xff1f; 编解码&#xff1a;支持几乎所有音视频格式&#xff08;如 H.264, AAC, MP3&#xff09;。转换&#xff1a;在不同容器格式之间转换&#xff08;如 MP4 → MKV&#xff09;。流处理&…...

创新实践分享:基于边缘智能+扣子的智能取物机器人解决方案

在 2024 年全国大学生物联网设计竞赛中&#xff0c;火山引擎作为支持企业&#xff0c;不仅参与了赛道的命题设计&#xff0c;还为参赛队伍提供了相关的硬件和软件支持。以边缘智能和扣子的联合应用为核心&#xff0c;参赛者们在这场竞赛中展现出了卓越的创新性和实用性&#xf…...

【蓝桥杯】省赛:神奇闹钟

思路 python做这题很简单&#xff0c;灵活用datetime库即可 code import os import sys# 请在此输入您的代码 import datetimestart datetime.datetime(1970,1,1,0,0,0) for _ in range(int(input())):ls input().split()end datetime.datetime.strptime(ls[0]ls[1],&quo…...

虚幻基础:蓝图常用节点

文章目录 timelinedelay/retriggerable&#xff1a;计时器&#xff1a;计时后的代码只执行一次delay&#xff1a;计时期间不可再触发&#xff0c;走完后再触发。retriggerable&#xff1a;计时期间可重复触发&#xff0c;触发则刷新计时时间。 doOnce&#xff1a;只可触发一次&…...

使用kubeadm方式以及使用第三方工具sealos搭建K8S集群

目录 kubeadm方式: 一、安装要求 二、环境准备 二、安装Docker、kubeadm、kubelet 1、安装Docker &#xff08;1&#xff09;首先配置一下Docker的阿里yum源 &#xff08;2&#xff09;然后用yum 方式安装docker &#xff08;3&#xff09;配置Docker镜像加速器 &#…...

ELK traceId实现跨服务日志追踪

ELK怎么实现跨服务日志追踪&#xff0c;Trace-Id 具体实现方案及代码_kibana关联其他服务器的日志-CSDN博客 ELKMDC追踪日志 ---- SpringCloud实现传递_elk的mdc-CSDN博客 SpringBoot之HandlerInterceptor拦截器的使用 ——&#xff08;一&#xff09;-CSDN博客 在使用ELK&a…...

2025 linux系统资源使用率统计docker容器使用率统计docker监控软件Weave Scope安装weavescope

1.Weave Scope介绍 Weave Scope 是一款用于监控和可视化 Docker 容器、Kubernetes 集群以及分布式应用的强大工具。它的设计目标是帮助开发者和运维人员更好地理解和管理复杂的微服务架构。以下是 Weave Scope 的主要优点&#xff1a; 1. 实时可视化 Weave Scope 提供了一个直…...

通过特征值和特征向量实现的图像压缩和特征提取

前文&#xff0c;我们在学习人工智能的线性代数基础的时候&#xff0c;就了解到&#xff0c;矩阵在人工智能中被广泛使用&#xff0c;接下来我们就从大家非常常见的图像开始&#xff0c;深度理解矩阵在人工智能中的应用。有关线性代数基础的文章可以看的我CSDN:人工智能中的线性…...

html-to-image的使用及图片变形和无图问题修复

html-to-image的使用及图片变形和无图问题修复 最近迭代的时候因为新增了一个需求&#xff0c;需要前端提供素材及样式给后端&#xff0c;后端同步渲染&#xff0c;但是因为部分样式问题后端无法实现所以决定前端将页面生成图片然后传递给后端使用&#xff0c;本文记录一下使用…...

【eNSP基础使用教程-1】

座右铭: 纵有疾风起&#xff0c;人生不言弃。 文章目录 前言一、更改设备名称指令1、双击路由器进入2、 进入系统视图3、更改设备名称为R14、使用同样的办法修改路由器R2、R3 二、配置路由物理接口的IP 地址1、查看R1路由器当前接口IP 地址配置与路由表2、查看路由器上的路由表…...