我正在阅读有关dart的文章,有人认为让我感到困惑的是匿名函数的语法。具体来说,如何为此类函数指定返回值的类型。
例如,考虑以下内容:
var f = (int x) {return x + 1;};
在这种情况下,我声明参数
x
的类型为int
。我怎样才能明确地说该函数返回int
?我知道编译器可能会使用类型推断来解决这一问题,但是我想明确指定类型,以防止在编写更复杂的函数时返回错误类型的值。
最佳答案
您可以执行以下操作:
int Function(int x) f = (int x) {return 1 + x;};
String Function(String x, String y) concatenate = (String x, String y) {return '$x$y';};
编辑:这是使用类型转换的一种更简单的方法:
int f = (int x) {return x + 1;} as int;
关于dart - 匿名函数的返回类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51826084/