Dart 中的一元运算符
在编程语言中,一元运算符是指只作用于一个操作数的运算符。Dart 中也提供了几种一元运算符,它们可以用来改变操作数的值或获取其属性。以下将详细介绍 Dart 中常用的一元运算符。
负号运算符(-)
负号运算符用于对数值进行取反操作。如果操作数是正数,则结果为负数;反之亦然。
void main() { int a = 10; print(-a); // 输出 -10 }
自增运算符(++)
自增运算符用于增加变量的值。它有两种使用方式:前置自增(++a
)和后置自增(a++
)。前置自增表示先增加变量的值,再使用该值;而后置自增则相反,先使用变量的值,再增加变量的值。
// javascriptcn.com 代码示例 void main() { int a = 5; // 前置自增 print(++a); // 输出 6 int b = 5; // 后置自增 print(b++); // 输出 5 print(b); // 输出 6 }
自减运算符(--)
自减运算符用于减少变量的值。它同样有两种使用方式:前置自减(--a
)和后置自减(a--
)。与自增运算符类似,前置自减表示先减少变量的值,再使用该值;而后置自减则相反,先使用变量的值,再减少变量的值。
// javascriptcn.com 代码示例 void main() { int a = 5; // 前置自减 print(--a); // 输出 4 int b = 5; // 后置自减 print(b--); // 输出 5 print(b); // 输出 4 }
取反运算符(!)
取反运算符用于逻辑取反。如果操作数是一个布尔值,则取反运算符会将其转换为其对立面。如果操作数不是布尔值,Dart 会尝试将其转换为布尔值后再进行取反。
void main() { bool flag = true; print(!flag); // 输出 false int num = 0; print(!num); // 输出 true }
空合并运算符(??)
空合并运算符用于提供默认值。当左侧的操作数为 null
时,返回右侧的操作数作为默认值。否则返回左侧的操作数。
void main() { String name = null; print(name ?? "Unknown"); // 输出 Unknown String name2 = "John"; print(name2 ?? "Unknown"); // 输出 John }
空合并赋值运算符(??=)
空合并赋值运算符用于在目标变量为 null
时为其赋值。它等价于:
if (target == null) { target = value; }
// javascriptcn.com 代码示例 void main() { String name; name ??= "Unknown"; print(name); // 输出 Unknown String name2 = "John"; name2 ??= "Unknown"; print(name2); // 输出 John }
以上介绍了 Dart 中常见的一元运算符及其使用方法。这些运算符在日常编程中非常有用,能够帮助我们更高效地编写代码。