您可能已经在 Dart 代码中看到了 => 符号。这种箭头语法是一种定义函数的方法,该函数在其右侧执行表达式并返回其值。
- 使用粗箭头
=> 需要删除大括号。否则,代码编辑器会显示错误。
- 如果函数具有返回类型,则需要使用胖箭头删除 return 关键字。
例如,考虑对List 类的any() 方法的调用:
bool hasEmpty = aListOfStrings.any((s) {
return s.isEmpty;
});
这是编写该代码的一种更简单的方法:
bool hasEmpty = aListOfStrings.any((s) => s.isEmpty);
代码示例
通过一个真实的代码示例来理解这个概念。代码执行矩形的周长和面积。这通常是在函数的帮助下完成的。
void main() {
findPerimeter(9, 6);
var rectArea = findArea(10, 6);
print('The area is $rectArea');
}
void findPerimeter(int length, int breadth) {
var perimeter = 2 * (length * breadth);
print('The perimeter is $perimeter');
}
int findArea(int length, int breadth) {
return length * breadth;
}
可以借助 Dart 中的粗箭头优化给定的函数。
void main() {
findPerimeter(9, 6);
var rectArea = findArea(10, 6);
print('The area is $rectArea');
}
void findPerimeter(int length, int breadth) =>
print('The perimeter is ${2 * (length * breadth)}');
int findArea(int length, int breadth) =>
length * breadth;
点击运行按钮后,我们仍然得到相同的结果。
The perimeter is 108
The area is 60