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

【Flutter 开发实战】Dart 基础篇:常用运算符

在这里插入图片描述

在Dart中,运算符是编写任何程序的基本构建块之一。本文将详细介绍Dart中常用的运算符,以帮助初学者更好地理解和运用这些概念。

1. 算术运算符

算术运算符用于执行基本的数学运算。Dart支持常见的加、减、乘、除、整除以及取余运算。常见的算数运算符如下表所示:

运算符描述示例
+加法a + b
-减法a - b
*乘法a * b
/除法a / b
%取余a % b
~/整除a ~/ b
void main() {int a = 10;int b = 3;// 加法print("加法: ${a + b}");// 减法print("减法: ${a - b}");// 乘法print("乘法: ${a * b}");// 除法print("除法: ${a / b}");// 整除print("除法: ${a ~/ b}");// 取余print("取余: ${a % b}");
}

2. 关系运算符

关系运算符用于比较两个值之间的关系,返回布尔值(true或false)。在 Dart 中,常见的关系运算符有:

运算符描述示例
==等于x == y
!=不等于x != y
<小于x < y
>大于x > y
<=小于等于x <= y
>=大于等于x >= y
void main() {int x = 5;int y = 8;// 相等print("相等: ${x == y}");// 不等print("不等: ${x != y}");// 大于print("大于: ${x > y}");// 小于print("小于: ${x < y}");// 大于等于print("大于等于: ${x >= y}");// 小于等于print("小于等于: ${x <= y}");
}

3. 逻辑运算符

逻辑运算符用于组合多个条件,常用于控制流程和判断语句,常见的逻辑运算符有:

运算符描述示例
&&逻辑与isTrue && isFalse
||逻辑或isTrue || isFalse
!逻辑非!isTrue
void main() {bool isTrue = true;bool isFalse = false;// 与运算print("与运算: ${isTrue && isFalse}");// 或运算print("或运算: ${isTrue || isFalse}");// 非运算print("非运算: ${!isTrue}");
}

4. 赋值运算符

赋值运算符用于将一个值赋给一个变量。Dart 中有简单赋值运算符 =,还有一些复合赋值运算符,如 +=-=*=/= 等,用于简化赋值语句。

运算符描述示例
=赋值a = b
+=加后赋值a += b
-=减后赋值a -= b
*=乘后赋值a *= b
/=除后赋值a /= b
%=取余后赋值a %= b
~/=整除后赋值a ~/= b
void main() {int a = 5;int b = 10;a += b;print("a += b: $a");a -= b;print("a -= b: $a");a *= b;print("a *= b: $a");a /= b;print("a /= b: $a");a %= b;print("a /= b: $a");
}

Dart提供了丰富的运算符,涵盖了从基本数学运算到逻辑判断的各种需求。熟练掌握这些运算符是成为一名优秀Dart程序员的重要一步。但 Dart 的运算符远不止本文中所介绍的这些,但本文所介绍的运算符已经可以满足后续开发的大多数需求了;如果想要了解 Dart 的更多运算符,可以访问下面的链接查看官方文档:

  • https://dart.cn/language/operators

希望本文对初学者理解Dart运算符提供了帮助,同时也鼓励大家在实践中不断探索和应用这些知识。

作者信息

作者 : 繁依Fanyi
CSDN: https://techfanyi.blog.csdn.net
掘金:https://juejin.cn/user/4154386571867191

相关文章:

【Flutter 开发实战】Dart 基础篇:常用运算符

在Dart中&#xff0c;运算符是编写任何程序的基本构建块之一。本文将详细介绍Dart中常用的运算符&#xff0c;以帮助初学者更好地理解和运用这些概念。 1. 算术运算符 算术运算符用于执行基本的数学运算。Dart支持常见的加、减、乘、除、整除以及取余运算。常见的算数运算符如…...

C++:ifstream通过getline读取文件会忽略最后一行空行

getline是读取文件的常用函数,虽然使用简单,但是有一个较容易被忽视的问题,就是文件最后一行空行会被忽略。 #include <iostream> #include <fstream> #include <string> using namespace std;void readWholeFileWithGetline(string fileName) {string t…...

力扣123. 买卖股票的最佳时机 III

动态规划 思路&#xff1a; 最多可以完成两笔交易&#xff0c;因此任意一天结束后&#xff0c;会处于5种状态&#xff1a; 未进行任何操作&#xff1b;只进行了一次买操作&#xff1b;进行了一次买操作和一次卖操作&#xff1b;再完成了一次交易之后&#xff0c;进行了一次买操…...

Vue3:vue-cli项目创建

一、node.js检测或安装&#xff1a; node -v node.js官方 二、vue-cli安装&#xff1a; npm install -g vue/cli # OR yarn global add vue/cli/*如果安装的时候报错&#xff0c;可以尝试一下方法 删除C:\Users**\AppData\Roaming下的npm和npm-cache文件夹 删除项目下的node…...

C# .Net学习笔记—— 异步和多线程(Task)

一、概念 Task是DotNet3.0之后所推出的一种新的使用多线程的方式&#xff0c;它是基于ThreadPool线程进行封装的。 二、使用多线程的时机 任务能够并发运行的时候&#xff0c;提升速度&#xff1b;优化体验 三、基本使用方法 private void button5_Click(object sender, Ev…...

Python从入门到网络爬虫(读写Excel详解)

前言 Python操作Excel的模块有很多&#xff0c;并且各有优劣&#xff0c;不同模块支持的操作和文件类型也有不同。最常用的Excel处理库有xlrd、xlwt、xlutils、xlwings、openpyxl、pandas&#xff0c;下面是各个模块的支持情况&#xff1a; 工具名称.xls.xlsx获取文件内容写入…...

Mysql之子查询、连接查询(内外)以及分页查询

目录 一.案例&#xff08;接上篇博客&#xff09; 09&#xff09;查询学过「张三」老师授课的同学的信息 10&#xff09;查询没有学全所有课程的同学的信息 11&#xff09;查询没学过"张三"老师讲授的任一门课程的学生姓名 12&#xff09;查询两门及其以上不及格课程…...

计算机的存储单位

在计算机中&#xff0c;只能识别二进制。 byte是1个字节&#xff0c;是8个比特位&#xff0c;所以byte可以存储的最大值是&#xff1a;01111111&#xff0c;byte是 [-128 ~ 127] 共可以标识256个不同的数字。 1字节 8bit&#xff08;8比特&#xff09;--> 1byte 8bit 类…...

设备树文件中的设备节点

一. 简介 前面几篇文章学习了 关于设备树文件的编译&#xff0c;设备树文件的调用。 本文开始学习 设备树文件的语法。具体学习设备节点与标准属性。 二. 设备树文件之设备节点与标准属性 1. 设备节点 设备树 是采用树形结构来描述板子上的设备信息的文件&#xff0c;每…...

文件管理工具.netcore资源文件管理

文件管理工具 怎么快速有效的管理我的文件包括文件夹&#xff0c;需求功能是 模糊搜索显示匹配的文件夹或文件数据 快速打开文件夹位置 在windows直接查看搜索速度太慢&#xff0c;范围宽泛&#xff0c;整理所需资源文件名和文件本机路径保存在数据库&#xff0c;可以在数据库中…...

go-carbon v2.3.4 发布,轻量级、语义化、对开发者友好的 Golang 时间处理库

carbon 是一个轻量级、语义化、对开发者友好的 golang 时间处理库&#xff0c;支持链式调用。 目前已被 awesome-go 收录&#xff0c;如果您觉得不错&#xff0c;请给个 star 吧 github.com/golang-module/carbon gitee.com/golang-module/carbon 安装使用 Golang 版本大于…...

vue3 内置组件

文章目录 前言一、过渡效果相关的组件1、Transition2、TransitionGroup 二、状态缓存组件&#xff08;KeepAlive&#xff09;三、传送组件&#xff08;Teleport &#xff09;四、异步依赖处理组件&#xff08;Suspense&#xff09; 前言 在vue3中 其提供了5个内置组件 Transiti…...

MFC如何动态创建button按钮并添加点击事件

在MFC中&#xff0c;可以使用CButton类来动态创建按钮。下面是一个示例代码&#xff0c;演示了如何动态创建按钮并添加点击事件&#xff1a; 在对话框类的头文件中声明按钮变量&#xff1a; CButton m_btnDynamic;在对话框的OnInitDialog()函数中使用Create()函数创建按钮&am…...

Qt - QML框架

文章目录 1 . 前言2 . 框架生成3 . 框架解析3.1 qml.pro解析3.2 main.cpp解析3.3 main.qml解析 4 . 总结 【极客技术传送门】 : https://blog.csdn.net/Engineer_LU/article/details/135149485 1 . 前言 什么是QML&#xff1f; QML是一种用户界面规范和编程语言。它允许开发人员…...

Python+Flask+MySQL的图书馆管理系统【附源码,运行简单】

PythonFlaskMySQL的图书馆管理系统【附源码&#xff0c;运行简单】 总览 1、《的图书馆管理系统》1.1 方案设计说明书设计目标需求分析工具列表 2、详细设计2.1 登录2.2 注册2.3 程序主页面2.4 图书新增界面2.5 图书信息修改界面2.6 普通用户界面2.7 其他功能贴图 3、下载 总览…...

Module-Federation[微前端]

Module-Federation 微前端简介我们为什么没有延续使用【乾坤】使用Module-Federation 优/缺EMP 优EMP 缺图解DEMO详解`Tips:` [文件资源](https://download.csdn.net/download/alnorthword/88699315)微前端简介 微前端是借鉴了微服务的理念,将一个庞大的应用拆分成多个独立灵活…...

Spring 动态数据源事务处理

在一般的 Spring 应用中,如果底层数据库访问采用的是 MyBatis,那么在大多数情况下,只使用一个单独的数据源,Spring 的事务管理在大多数情况下都是有效的。然而,在一些复杂的业务场景下,如需要在某一时刻访问不同的数据库,由于 Spring 对于事务管理实现的方式,可能不能达…...

WSL2-Ubuntu22.04子系统图形化界面搭建与远程桌面连接

提示&#xff1a;文中不提供WSL2子系统搭建步骤&#xff0c;假定子系统已建立好&#xff1a; 文章目录 检查WSL子系统状态图形化界面安装远程桌面连接可能遇到的相关问题xrdp状态异常远程桌面黑屏 检查WSL子系统状态 wsl -l -v如下图所示为正常 图形化界面安装 以此执行如下…...

【sklearn练习】model常用属性和功能

介绍 scikit-learn 中的机器学习模型&#xff08;estimator&#xff09;通常具有一组常用属性和功能&#xff0c;这些属性和功能可以用于训练、评估和使用模型。以下是一些常见的模型属性和功能&#xff1a; 常见属性&#xff1a; coef_&#xff1a;对于线性模型&#xff08;…...

IO类day01

File类 File类的每一个实例可以表示硬盘(文件系统)中的一个文件或目录(实际上表示的是一个抽象路径) 使用File可以做到: 1:访问其表示的文件或目录的属性信息,例如:名字,大小,修改时间等等 2:创建和删除文件或目录 3:访问一个目录中的子项 但是File不能访问文件数据. pu…...

LSLib:让《神界原罪》和《博德之门3》MOD制作变得高效完整的实用指南

LSLib&#xff1a;让《神界原罪》和《博德之门3》MOD制作变得高效完整的实用指南 【免费下载链接】lslib Tools for manipulating Divinity Original Sin and Baldurs Gate 3 files 项目地址: https://gitcode.com/gh_mirrors/ls/lslib 你是否曾想为《神界原罪》或《博德…...

从‘能用’到‘优雅’:Python函数设计的3个坏味道与5个重构技巧(附代码对比)

从‘能用’到‘优雅’&#xff1a;Python函数设计的3个坏味道与5个重构技巧&#xff08;附代码对比&#xff09; 在Python开发中&#xff0c;函数是最基本的代码组织单元。许多开发者能够快速实现功能&#xff0c;却往往忽视了函数设计的质量。本文将揭示三种典型的函数设计&qu…...

Gemini实时字幕在Google Meet中延迟超800ms?揭秘谷歌内部SRE监控数据与3步毫秒级调优法

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Gemini实时字幕在Google Meet中延迟超800ms&#xff1f;揭秘谷歌内部SRE监控数据与3步毫秒级调优法 谷歌内部SRE团队近期公开的一组匿名化监控数据显示&#xff1a;在高并发&#xff08;>500人&…...

告别内存焦虑:用STM32+外部SRAM(IS62WV51216)实现大数组和GUI缓存

STM32外部SRAM实战&#xff1a;突破内存限制的工程化解决方案 当你在STM32上开发图形界面或处理音频流时&#xff0c;是否遇到过程序突然崩溃的窘境&#xff1f;那些隐藏在编译通过背后的内存溢出问题&#xff0c;往往在项目后期才暴露出来。最近接手的一个智能家居控制面板项目…...

苹果W1芯片如何通过低功耗无线技术重塑TWS耳机体验

1. 无线音频的功耗困局与苹果的破局思路 2016年9月&#xff0c;当苹果在发布会上首次亮出那对剪掉线缆的AirPods时&#xff0c;整个消费电子行业都在问同一个问题&#xff1a;它是怎么做到的&#xff1f;更具体地说&#xff0c;它如何解决了无线耳机领域最核心、也最令人头疼的…...

ExplorerPatcher:彻底改造你的Windows界面体验,打造个性化高效工作环境

ExplorerPatcher&#xff1a;彻底改造你的Windows界面体验&#xff0c;打造个性化高效工作环境 【免费下载链接】ExplorerPatcher This project aims to enhance the working environment on Windows 项目地址: https://gitcode.com/GitHub_Trending/ex/ExplorerPatcher …...

彻底告别Ubuntu 20.04休眠唤醒黑屏:除了降级驱动,你还可以这样一劳永逸地禁用挂起

彻底告别Ubuntu 20.04休眠唤醒黑屏&#xff1a;系统级电源管理优化指南 如果你正在使用Ubuntu 20.04并频繁遭遇休眠唤醒后的黑屏问题&#xff0c;这篇文章将为你提供一套完整的解决方案。不同于常见的驱动降级方案&#xff0c;我们将从系统配置层面入手&#xff0c;通过调整电源…...

3大核心功能:智能自动化提升英雄联盟游戏体验的终极指南

3大核心功能&#xff1a;智能自动化提升英雄联盟游戏体验的终极指南 【免费下载链接】League-Toolkit An all-in-one toolkit for LeagueClient. Gathering power &#x1f680;. 项目地址: https://gitcode.com/gh_mirrors/le/League-Toolkit League Akari是一款基于英…...

别再傻傻分不清了!VB、VBS、VBA到底该用哪个?从Excel自动化到网页脚本的实战选择指南

VB、VBS与VBA实战指南&#xff1a;从Excel自动化到系统脚本的精准选择 每次打开Excel准备处理数据时&#xff0c;你是否纠结过该用VBA还是VBS&#xff1f;当需要批量重命名文件时&#xff0c;是否犹豫过VB和VBS哪个更高效&#xff1f;这三种看似相似的"VB系"语言&am…...

AI Token中转副业火爆!小白也能快速上手?3小时建站+真实盈利模式全解析!

很多观望的小白最纠结两个核心问题&#xff1a;普通人搭建一个Token中转站到底要多久&#xff1f;建好之后真的能赚钱吗&#xff0c;真实赚钱逻辑是什么&#xff1f; 今天不讲噱头、不吹月入几万&#xff0c;结合行业真实现状、新手实操经验&#xff0c;一次性讲透搭建耗时、成…...