匿名函数的返回类型

时间:2018-08-13 15:44:12

标签: dart

我正在阅读有关dart的文章,有人认为让我感到困惑的是匿名函数的语法。具体来说,如何为此类函数指定返回值的类型。

例如,考虑以下内容:

var f = (int x) {return x + 1;};

在这种情况下,我声明参数x的类型为int。我怎样才能明确地说该函数返回一个int?我知道编译器可能会使用类型推断来解决这个问题,但是我想明确指定类型,以防止在编写更复杂的函数时返回错误类型的值。

3 个答案:

答案 0 :(得分:8)

您可以执行以下操作:

URL url = new Url("your url");
URLConnection c = url.openConnection();
String contentType = c.getContentType();

编辑: 这是使用类型转换的一种简单方法:

int Function(int x) f = (int x) {return 1 + x;};
String Function(String x, String y) concatenate = (String x, String y) {return '$x$y';};

答案 1 :(得分:5)

您可以像常规函数一样声明匿名的内联函数

int count(int a, int b) {
  int innerThing(int c, int d) => c + d;

  return innerThing(a, b);
}

那可能更容易。

答案 2 :(得分:0)

您可以这样声明多个内联函数:

UIViewControllers