dart系列之:数学什么的就是小意思,看我dart如何玩转它
简介
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/
最通俗的解读,最深刻的干货,最简洁的教程,众多你不知道的小技巧等你来发现!
欢迎关注我的公众号:「程序那些事」,懂技术,更懂你!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现