表达式是一种特殊类型的语句,其求值为一个值。 每个表达式都由

操作数 – 表示数据

运算符 – 定义如何处理操作数以生成值。

思考以下表达式 – “2 + 3”。 在该表达式中,2和3是操作数,符号“+”(加号)是运算符。

在本章中,我们将讨论Dart中可用的运算符。

算术运算符

相等和关系运算符

类型检查运算符

按位运算符

赋值运算符

逻辑运算符

算术运算符

下表显示了Dart支持的算术运算符。

Dart算术运算符

序号

操作符&含义

1

+(加)

2

−(减)

3

-expr (一元减号,也称为否定(反转表达式的符号))

4

*(乘)

5

/(除)

6

~/(除,返回整数结果)

7

%(获取整数除法的余数(取余))

8

++(自加1)

9

– (自减1)

相等和关系运算符

关系运算符测试或定义两个实体之间的关系类型。 关系运算符返回一个布尔值,即true / false。

假设A的值为10,B为20。

Dart相等和关系运算符

操作符

描述

Example

gt;

大于

(A gt; B) 为false

lt;

小于

(A lt; B) 为 true

gt;=

大于等于

(A gt;= B)为 false

lt;=

小于等于

(A lt;= B) 为 true

==

等于

(A==B) 为 true

!=

不相等

(A!=B) 为 true

类型检查运算符

这些运算符可以方便地在运行时检查类型。

Dart类型检查运算符

运算符

含义

is

如果对象具有指定的类型,则为True

!is

如果对象具有指定的类型,则返回false

按位运算符

下表列出了Dart中可用的按位运算符及它们的作用。

Dart按位运算符

操作符

描述

Example

按位和

a & b

在每个位都为1时返回1。

按位或

a | b

在每个位位置返回1,其中一个或两个操作数的对应位为1。

异或

a ^ b

在每个位位置返回一个1,其中任一个操作数的对应位为1,但不是两个操作数的对应位都为1。

取反

~ a

按位取反。

左移

a ≪ b

向左移位二进制表示b(<32)位,从右移零。

右移

a ≫ b

向左移位二进制表示b(<32)位,丢弃移位的位。

赋值运算符

下表列出了Dart中可用的赋值操作符。

Dart赋值运算符序号操作符&描述1=(赋值)将值从右侧操作数分配给左侧操作数。

2? ? = 仅当变量为空时才赋值

3+=(加且赋值运算符)它将右操作数添加到左操作数并将结果赋给左操作数。

4-= 它从左操作数中减去右操作数,并将结果赋给左操作数。

5*= 乘且赋值运算符,把右边操作数乘以左边操作数的结果赋值给左边操作数。

6/= 除且赋值运算符,把左边操作数除以右边操作数的结果赋值给左边操作数。

注意: 相同的逻辑适用于按位运算符,因此它们将变为«=,»=,»=,»=,| =和^ =。

逻辑运算符

逻辑运算符用于组合两个或多个条件。 逻辑运算符返回一个布尔值。

假设变量A的值为10,而变量B为20。

Dart逻辑运算符

操作符

描述

例子

amp;amp;

称为逻辑与运算符。如果两个操作数都非零,则条件为真。

(A > 10 && B > 10) 为 false。

||

称为逻辑或运算符。如果两个操作数中有任意一个非零,则条件为真。

(A > 10 || B > 10)为true。

!

称为逻辑非运算符。用来逆转操作数的逻辑状态。如果条件为真则逻辑非运算符将使其为假。

!(A > 10)为true。

条件表达式

Dart有两个运算符,可以让您计算可能需要ifelse语句的表达式。

条件? 表达式1 : 表达式2

如果条件为true,那么就值等于表达式1,如果条件为false,那么值就为表达式。在别的语言中,这个也叫做三元表达式。

表达式1?? 表达式2

如果表达式1为非null,则返回其值; 否则,计算并返回表达式2的值。

Example1:

下面的例子显示了如何在Dart中使用条件表达式。

void main() {

var a = 10;

var res = a > 12 ? "大于 10":"小于等于 10";

print(res);

}

上面的代码会输出以下结果。

小于等于10

Example2:

我们再来看一下另外一个例子。

void main() {

var a = null;

var b = 'pipipi.net';

var res = a ?? b;

print(res);

}

上面的代码会输出

pipipi.net

原创文章,作者:犀牛前端部落,如若转载,请注明出处:https://www.pipipi.net/dart/dart-operators.html

dart 乘方运算符_Dart 运算符相关推荐

  1. dart 乘方运算符_Dart系列-运算符

    周末学习了一下Dart语言,按照慕课网Flutter开发第一步-Dart编程语言入门教程进行学习,所以记录一下,感觉慕课网的老师辛苦做的视频教程,说得很清楚,有基础学起来很轻松也很快,本篇来学习dar ...

  2. Dart入门—函数与运算符

    Dart入门-函数与运算符 函数 基本语法 void main(){printNameA("XiaoMing");printNameB("XiaoMing"); ...

  3. SQL基础学习总结:3(select语句基础算术运算符比较运算符)

    select语句基础 列的查询 从表中选取数据时需要使用select语句,通过select语句查询并选取出必要数据的过程称为匹配查询或查询. 语法结构如下: select <列名1>,&l ...

  4. 简述PHP中有哪些运算符,PHP运算符简述

    PHP的运算符号和操作符号 按运算符号的功能划分为 算术运算符,用于处理常用的数学运算 加+ 减- 乘* 除/ 取余运算符% 通常运用于整除运算(如判断是否闰年)和控制范围.尽量不要使用小数和负数进行 ...

  5. java 运算符_java 运算符

    运算符是一些特殊的符号,主要用于数学函数,一些类型的赋值语句或逻辑比较方面.Java 中的运算符分为以下几类. 一.算数运算符 算数运算符包括: + 加法运算,字符串连接运算 - 减法运算 * 乘法运 ...

  6. VBS基础篇 - 运算符(1) - 运算符优先级

    VBScript 有一套完整的运算符,包括算术运算符.字符串运算符.关系运算符和逻辑运算符. 运算符优先级 运算符优先级:在一个表达式中进行多个运算时,每一部分都会按预先确定的顺序进行计算求解. 括号 ...

  7. (4)javascript的运算符以及运算符的优先级

    运算符的使用方法 在javascript的程序中要完成各种各样的运算,是离不开运算符的. 在javascript中,按运算符类型可以分为算术运算符.赋值运算符.比较运算符.逻辑运算符.条件运算符等. ...

  8. 【C++ 语言】面向对象 ( 函数重载 | 运算符重载 | 运算符重载两种定义方式 | 拷贝构造方法 | RVO 优化 | NRVO 优化 )

    文章目录 函数重载 运算符重载 ( 类内部定义云算符重载 ) 运算符重载 ( 类外部定义运算符重载 ) 可重载的运算符 拷贝构造方法 编译器优化 ( RVO 优化 | NRVO 优化 ) 完整代码示例 ...

  9. 在学习Python基础中需要知道的知识点:运算符大全,收藏,以后方面查询(算术运算符、赋值运算符、比较运算符、位运算符、逻辑运算符、成员运算符、身份运算符、运算符优先级))

    一.算术运算符 运算符 描述 实例 + 加 - 两个对象相加 a + b 输出结果 30 - 减 - 得到负数或是一个数减去另一个数 a - b 输出结果 -10 * 乘 - 两个数相乘或是返回一个被 ...

最新文章

  1. 0x06.基本算法 — 倍增
  2. pyspider爬虫学习-文档翻译-About-Projects.md
  3. Spring Boot WebMagic 入库时 mapper注入提示空指针,以及正确的操作
  4. HDU - 3987 Harry Potter and the Forbidden Forest(最小割最少边数)
  5. SAPGUI系统登录页面配置的SAProuter有什么用 2
  6. java 高性能缓存_高性能Java缓存----Caffeine
  7. 15.try...except...finally
  8. 链表节点的删除(链表data升序有重复)
  9. String.format(“0:D2}“,a)字符串格式化
  10. 十大排序算法——桶排序(C语言)
  11. java机房温度监测的仿真_基于三维仿真的数据中心机房监控可视化管理
  12. 相对路径目录返回问题
  13. mac系统自带中文输入法提示条不见了怎样找回
  14. 计算等额本本息和等额本金的python代码
  15. 【算法】剑指offer - JZ76 删除链表中重复的结点
  16. SpringMVC的核心架构示意图<搬代码>
  17. 无限制版电驴搜索器(绿色版)
  18. 通过注册表设置远程桌面的配置
  19. 【Electronics】基于锁相环CD4046的数字频率合成器
  20. IMX6ULL---SD卡制作与烧录步骤(重要)

热门文章

  1. 2021-03-30 CodeCraft-21 and Codeforces Round #711 (Div. 2)
  2. ie浏览器如何创建ajax,唯独ie浏览器缓存ajax请求
  3. mysql单步调试工具_通过查询分析器的调试功能进行单步调试
  4. maya中英文对照_Maya中英对照
  5. win10系统下使用opencv-dnn部署yolov5模型
  6. QT tableview滚动条ScrollBar
  7. 【论文代码阅读】LORA: LOW-RANK ADAPTATION OF LARGE LAN- GUAGE MODELS
  8. 《可汗学院-线性代数小结》
  9. 【2021-12-30】我爱林俊杰之猜歌游戏
  10. Vue子组件向父组件传值