dart系列之:数学什么的就是小意思,看我dart如何玩转它
文章目錄
- 簡介
- dart:math包的構成
- math
- Random
- 總結
簡介
dart也可以進行數學運算,dart為數學愛好者專門創建了一個dart:math包來處理數學方面的各種操作。dart:math包提供了正弦,余弦,最大值,最小值和隨機數等操作。
一起來看看dart:math包都能做什么吧。
dart:math包的構成
如果你去查看dart:math的源代碼,你會發現,dart:math包其實很簡單,它里面只有4個文件。分別是:
math.dart,random.dart,point.dart和rectangle.dart。
后面兩個文件,主要跟二維坐標有關,這里不詳細說明。
我們常用到的就是前面兩個文件,math和random。
math
math中定義了我們在數學運算中常用到的一些常量,如:
const double e = 2.718281828459045;const double ln10 = 2.302585092994046;const double ln2 = 0.6931471805599453;const double log2e = 1.4426950408889634;const double log10e = 0.4342944819032518;const double pi = 3.1415926535897932;const double sqrt1_2 = 0.7071067811865476;const double sqrt2 = 1.4142135623730951;計算最大值和最小值:
assert(max(18, 20) == 20); assert(min(18, 20) == 18);使用三角函數:
assert(cos(pi) == -1.0);var degrees = 30; var radians = degrees * (pi / 180);var sinOf30degrees = sin(radians);assert((sinOf30degrees - 0.5).abs() < 0.01);Random
dart中的random包提供了一些比較有用的生成隨機數的方法,先看下Random類的定義:
abstract class Random {external factory Random([int? seed]);external factory Random.secure();int nextInt(int max);double nextDouble();bool nextBool(); }我們可以使用Random中提供的nextInt,nextDouble和nextBool來生成對應的隨機數:
var random = Random(); random.nextDouble(); random.nextInt(10); random.nextBool();默認情況下,Random生成的是偽隨機數,要想生成更加安全的隨機數,比如密碼學意義上的隨機數,Random還有一個更加安全的實現Random.secure()。
總結
以上就是dart中math庫的介紹。
本文已收錄于 http://www.flydean.com/18-dart-math/
最通俗的解讀,最深刻的干貨,最簡潔的教程,眾多你不知道的小技巧等你來發現!
歡迎關注我的公眾號:「程序那些事」,懂技術,更懂你!
總結
以上是生活随笔為你收集整理的dart系列之:数学什么的就是小意思,看我dart如何玩转它的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: dart系列之:时间你慢点走,我要在da
- 下一篇: dart系列之:还在为编码解码而烦恼吗?