在 Flutter (Dart) 中生成 double,包括 1 个

Generate double including 1 in Flutter (Dart)

提问人:Nikita Shadkov 提问时间:11/15/2023 更新时间:11/15/2023 访问量:35

问:

有人问我一个问题,如何为 添加范围。我想出的解决方案是生成 int 并将其应用于小数。1random.nextDouble()

  double getRandomDouble(){
    final random = Random();

    int a = random.nextInt(10001); // generates int from 0 to 10000
    String stringValue;
    if (a == 10000) {
      stringValue = '1.0';
    } else {
      stringValue = '0.$a';
    }
    return double.parse(stringValue);
  }
颤振 算法 飞镖 随机

评论

0赞 Ivo 11/15/2023
这个解决方案不正确的原因是,如果例如 2、20、200 或 2000,它将导致相同的双精度。如果你在左边用 0 填充它们,我认为这个解决方案也很好,所以喜欢,但是是的,你的答案更好astringValue = '0.${a.toString().padLeft(4, '0')}';

答:

1赞 Nikita Shadkov 11/15/2023 #1

有人告诉我,解决方案是或random.nextInt(256)/255random.nextInt(intMax)/intMax