3.运算符

运算符本质上就是代表某运算规则的符号,例如: + ,这个符号,代表着数学运算里面的加法,按照加法法则进行运算即可,同理,学习运算符就是掌握这些规则而已

3.1.算术运算符

算术运算符主要包括+、-、*、\、++、--、~/、%

void main() {
int a = 10;
int b = 20;
print(a + b); // 30
print(a - b); // -10
print(a * b); // 200
print(a / b); // 0.5
print(a % b); // 10
print(211 ~/ 90); // 2
a++;
print(a);
b--;
print(b);
}

3.2.逻辑运算符

逻辑运算符主要包括:!、&&、||

void main() {
bool bl1 = true;
bool bl2 = false;
// 取反
print(!bl1);
// || 结果有真为真
print(bl1 || bl2);
// && 结果有假为假
print(bl1 && bl2);
}

3.3.赋值运算符

赋值运算符包括:=、??=、+=、-=、*=、/=

void main() {
// 把10赋值给变量a
int a = 10;
int b = 20;
// ??= 这个运算符规则:1. 如果b原来有值,那么就使用原来的值,这里原来的值为20
b ??= 30;
print(b);
int c;
// 2. 如果变量原来是空的,那么就把后面的值赋给这个变量,下面的代码c原来没有值,所以把40赋值给c
c ??= 40;
print(c);
}

其他运算符的规则非常简单,属于复合运算符,具体规则如下:

void main() {
int a = 10;
a += 20; // 等价于 a = a + 20
print(a); // 30
// 规则以此类推 a -= 20 => a = a - 20
// a *= 20 => a = a * 20
// a /= 20 => a = a / 20
// ...
}

3.4.比较运算符

比较运算符主要用于判断两个值是否相等、大于、小于

void main() {
int a = 10;
int b = 20;
print(a > b); // false
print(a >= b); // false
print(a < b); // true
print(a <= b); // true
print(a == b); //false
}

注意:print(a === b); 这样写会报错

3.5.条件运算符

1.三目运算: 条件 ? 表达式1 :表达式2

void main() {
print(5 > 3 ? true: false);
}

2.??运算符:表达式1??表达式2

void main() {
int a;
int b = 20;
int c = a ?? b;
print(c);
}

螺钉课堂视频课程地址:http://edu.nodeing.com

dart快速入门教程 (3)的更多相关文章

  1. dart快速入门教程 (8)

    9.dart中的库 9.1.自定义库 自定义库我们在前面已经使用过了,把某些功能抽取到一个文件,使用的时候通过import引入即可 9.2.系统内置库 以math库为例: import "d ...

  2. dart快速入门教程 (7.4)

    7.12.多态 多态字面上理解就是多种状态,通俗的说,多态表现为父类定义一个方法不去实现,子类继承这个方法后实现父类的方法,这个方法有多种表现 // import 'person.dart'; voi ...

  3. dart快速入门教程 (7.3)

    7.4.抽离类为单独文件 新建一个文件,单独存放一个类,例如:Person类抽离到person.dart文件中 class Person { final String name; final num ...

  4. dart快速入门教程 (7.2)

    7.4.抽离类为单独文件 新建一个文件,单独存放一个类,例如:Person类抽离到person.dart文件中 class Person { final String name; final num ...

  5. dart快速入门教程 (7.1)

    7.面向对象 dart是一门使用类和单继承的面向对象语言,所有的对象都是类的实例,所有的类都是Object的子类,换句话说就是万物皆对象 7.1.类与对象 void main() { // 注意:ne ...

  6. dart快速入门教程 (2)

    2.变量和数据类型 2.1.变量和常量 变量通俗的说就是可以变化的量,作用就是用来存储数据,你可以把一个变量看作是一个水果篮,里面可以装苹果.梨.香蕉等,常量就是一个固定的值,和变量是相对的,变量可以 ...

  7. dart快速入门教程 (1)

    1.环境搭建 1.1.dart简介 Dart 是一种 易于学习. 易于扩展.并且可以部署到 任何地方 的 应用 编程 语言.Google 使用 Dart 来开发 大型应用.flutter使用dart语 ...

  8. dart快速入门教程 (6)

    6.内置操作方法和属性 6.1.数字类型 1.isEven判断是否是偶数 int n = 10; print(n.isEven); // true 2.isOdd判断是否是奇数 int n = 101 ...

  9. dart快速入门教程 (5)

    5.函数 5.1.函数定义 语法: 返回值类型 函数名(参数类型 参数1, 参数类型 参数2,...) { // 函数体 return '返回值' } 举例: void main() { print( ...

  10. dart快速入门教程 (4)

    4.流程控制 4.1.分支结构 1.if语句 void main() { int score = 80; if (score >= 90) { print('优秀'); } else if (s ...

随机推荐

  1. Chisel3 - util - Bitwise

    https://mp.weixin.qq.com/s/MQzX1Ned35ztz0vusPdkdQ   比特相关的操作.   参考链接: https://github.com/freechipspro ...

  2. meta个人学习纪录

    < meta > 元素 元素可提供相关页面的元信息(meta-information),比如针对搜索引擎和更新频度的描述和关键词. 标签位于文档的头部,不包含任何内容. 标签的属性定义了与 ...

  3. Linux 日志管理简介

    查看日志rsyslogd是否启动和自启动 ps aux | grep rsyslogd 查看自启动(CentOS 7使用,CentOS 6可以使用chkconfig命令) systemctl list ...

  4. 如何通过AzureAD平台提供的授权方式访问sharepoint online

    官方文档: 1.https://docs.microsoft.com/zh-cn/previous-versions/azure/dn645543(v=azure.100)?redirectedfro ...

  5. airpods2隐藏的使用技巧(十)点

    airpods的凭借出色的外观.不错的音质以及非常人性化的用户体验秒杀了同类型的许多真无线蓝牙耳机,以下是第二代产品airpods2一些使用的技巧,推荐给大家.   一. 随时随地查看airpods2 ...

  6. netty集群(一)-服务注册发现

    上篇文章介绍了如何搭建一个单机版本的netty聊天室:https://www.jianshu.com/p/f786c70eeccc. 一.需要解决什么问题: 当连接数超过单机的极限时,需要将netty ...

  7. 让LED程序在片外SDRAM中运行

    让LED程序在片外SDRAM中运行 一.引子 在前一篇文章中,我们已经成功点亮过LED了,为什么还要再重复一次呢? 我们已经知道,Mini2440开发板有两种启动模式:从NorFlash启动和从Nan ...

  8. PyQt5入门教程

    原文链接:https://blog.csdn.net/azuremouse/article/details/90338961 问题记录: 1. pip 安装时速度太慢, 需要使用国内镜像 pip in ...

  9. 【漏洞复现】Fastjson <=1.2.47远程命令执行

      0x01 漏洞概述 漏洞描述 Fastjson是一款开源JSON解析库,它可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBe ...

  10. usb串口的作用以及JLINK

    usb串口的作用 (1)可以当串口使用 (2)如果usb串口连接到STM32的串口1(stm32ISP下载只能是串口1),可以用串口下载程序 (3)因为要连接到usb,可以用来供电 JLINK JLI ...