【问题标题】:Flutter: Which is more efficient for getting a double from intFlutter:从 int 获取双精度值更有效
【发布时间】:2020-09-25 10:50:23
【问题描述】:

假设 a = 1,我们要将其转换为 double 我知道的两种方法:-

  1. double.parse(a.toString())
  2. a * 1.0

哪个更高效,为什么?

如果有人知道另一种方法,请告诉我

谢谢!

编辑

替代方法:

  1. a.toDouble()-Oshibka404

【问题讨论】:

  • 这对您的问题有用吗? stackoverflow.com/questions/7453505/…
  • 最规范的方式是使用a.toDouble()。将整数转换为字符串,然后将其解析为双精度,几乎按照定义似乎是次优的。我想,a*1.0a.toDouble() 的作用几乎相同,但使用 toDouble 在语义上看起来更清晰。

标签: performance flutter type-conversion int double


【解决方案1】:

这与复杂性有关。

double x = a * 1.0; 这只会运行一次。

double x = double.parse(a.toString()); 从技术上讲,这会运行 2 次或更多次。它首先转换为字符串,然后将其转换为双精度。 (弹出到颤振框架中的双重定义以了解更多信息。)

所以第一种方法更简单有效。

【讨论】:

    猜你喜欢
    • 2020-08-09
    • 1970-01-01
    • 2013-12-28
    • 2014-11-29
    • 2016-07-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多