【问题标题】:Why does dart ask me to declare an unnecessary argument?为什么 Dart 要求我声明一个不必要的参数?
【发布时间】:2022-10-13 17:11:50
【问题描述】:

如果在下面的生成函数中没有任何用途,为什么我需要声明一个名为“idx”的 int 类型变量?

Random r2 = new Random();
  var list = List<int>.generate(5, (int idx) => r2.nextInt(100));

如果我不声明它飞镖会给我以下错误

The argument type 'int Function()' can't be assigned to the parameter type 'int Function(int)'

【问题讨论】:

    标签: flutter dart casting


    【解决方案1】:

    List.generate 已定义为

    List.generate(int length, E generator(int index),
          {bool growable = true});
    

    所以你需要提供一个函数,如果你想忽略它,你可以使用_

     List<int>.generate(5, (_) => r2.nextInt(100));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-08-09
      • 2018-08-14
      • 1970-01-01
      • 2019-11-05
      • 2022-09-23
      • 1970-01-01
      • 2022-12-03
      相关资源
      最近更新 更多