Dart条件表达式

简介: Dart中的条件表达式有两种形式,用来替换简单的`if-else`语句。

Dart条件表达式

Dart中的条件表达式有两种形式,用来替换简单的if-else语句。

condition ? expr1 : expr2

常见的形式如下,跟Java中条件表达式形式一致。

condition ? expr1 : expr2

如果condition为true,则执行并返回expr1,否则就执行并返回expr2。

当你的赋值操作依赖于一个boolean类型表达式时,可以考虑使用它。

expr1 ?? expr2

我们看下第二种形式:

expr1 ?? expr2

如果expr1的值非空,就返回它,否则就返回expr2的值。

当你的Boolean表达式依赖于是否为null时,开率使用它。

实例

下面通过例子来说明。

String playerName(String name) {
  if (name != null) {
    return name;
  } else {
    return 'Guest';
  }
}

main(){
  print('${playerName("猫了个咪")}');
  print('${playerName(null)}');
}

output:
猫了个咪
Guest

上面的playerName方法使用的是普通的if-else语句,我们先用condition ? expr1 : expr2形式来简化,代码如下:

String playerName(String name) => name != null ? name : 'Guest';

这个例子还可以用expr1 ?? expr2来优化,代码如下:

String playerName(String name) => name ?? 'Guest';

参考:

https://www.dartlang.org/guides/language/language-tour#conditional-expressions

相关文章
|
2月前
|
C++
在C++语言中条件语句的类型
在C++语言中条件语句的类型
14 0
|
8月前
|
Python
Python条件表达式
Python条件表达式
23 0
|
7月前
|
Python
python之if语句的单分支,双分支,多分支,if逻辑运算符or,if逻辑运算符and,if语句的嵌套的定义及其使用方法
python之if语句的单分支,双分支,多分支,if逻辑运算符or,if逻辑运算符and,if语句的嵌套的定义及其使用方法
140 0
|
5月前
|
JavaScript
TypeScript 中常用的条件语句:`if`语句、`if-else`语句、`switch`语句和`三元运算符`
TypeScript 中常用的条件语句:`if`语句、`if-else`语句、`switch`语句和`三元运算符`
86 4
N..
|
2月前
|
Dart
Dart语言中的条件表达式和运算符
Dart语言中的条件表达式和运算符
N..
7 0
|
4月前
|
前端开发
简化 if true...else 条件表达式
简化 if true...else 条件表达式
|
5月前
|
Go
深入了解 Golang 条件语句:if、else、else if 和嵌套 if 的实用示例
条件语句用于根据不同的条件执行不同的操作。 Go中的条件可以是真或假。 Go支持数学中常见的比较运算符: 小于 < 小于等于 <= 大于 > 大于等于 >= 等于 == 不等于 != 此外,Go还支持常见的逻辑运算符: 逻辑与 && 逻辑或 || 逻辑非 ! 您可以使用这些运算符或它们的组合来创建不同决策的条件。 示例 尝试一下 x > y x != y (x > y) && (y > z) (x == y) || z Go具有以下条件语句: 使用if来指定在指定条件为真时执行的代码块 使用else来指定在相同条件为假时执行的代码块 使用else if来指定要测试的新条件,如果第
57 2
|
8月前
|
开发工具 Python
【python基础知识】2.if条件判断与条件嵌套
【python基础知识】2.if条件判断与条件嵌套
111 0
【python基础知识】2.if条件判断与条件嵌套
|
11月前
|
前端开发
Less预处理——继承、导入、条件表达式和函数
Less预处理——继承、导入、条件表达式和函数
185 0
|
Dart JavaScript 前端开发
Dart 条件语句
Dart 条件语句 在 Dart if 语句中,if-else 语句和 if-else-if 语句用于实现基于一个或多个布尔表达式的语句的条件执行。 在本教程中,我们将学习 Dart If 语句、Dart If-Else 语句和 Dart If-Else-If 梯形语句的语法和用法。
188 0