当前位置: 首页 > news >正文

微信表情包制作网站软件定制化

微信表情包制作网站,软件定制化,茶叶网站设计,企业建站 源码🔥「炎码工坊」技术弹药已装填! 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、问题驱动:为什么需要 Math 类? 场景1:生成随机密码 假设你要开发一个注册系统,需要生成一个6位随机数…

 

🔥「炎码工坊」技术弹药已装填!
点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】

 


一、问题驱动:为什么需要 Math 类?

场景1:生成随机密码
假设你要开发一个注册系统,需要生成一个6位随机数字密码。你会怎么做? 

// 方案1:使用 Math.random()
int password = (int)(Math.random() * 900000) + 100000;
System.out.println("随机密码:" + password);

场景2:计算两点距离
在游戏中,角色A坐标(3,4),角色B坐标(0,0),如何计算两者距离? 

double distance = Math.sqrt(Math.pow(3-0, 2) + Math.pow(4-0, 2));
System.out.println("两点距离:" + distance); // 输出5.0

问题本质
Math 类提供了 数学运算的标准化工具,避免重复造轮子。 


二、Math 类核心功能详解

1. 基础操作:四则运算与取整

// 取绝对值
System.out.println(Math.abs(-10)); // 输出10// 最大值/最小值
System.out.println(Math.max(5, 10)); // 输出10
System.out.println(Math.min(5, 10)); // 输出5// 四舍五入
System.out.println(Math.round(2.6f)); // 输出3

2. 高级运算:三角函数与幂运算

// 角度转弧度
double radians = Math.toRadians(45);
// 计算正弦值
System.out.println(Math.sin(radians)); // 约0.7071// 幂运算
System.out.println(Math.pow(2, 3)); // 输出8.0

3. 随机数生成:不止于 Math.random()

// 方案1:Math.random() [0,1)
System.out.println(Math.random()); // 方案2:ThreadLocalRandom(Java 7+)
import java.util.concurrent.ThreadLocalRandom;
System.out.println(ThreadLocalRandom.current().nextInt(1, 100));

三、方案对比:不同需求如何选型?

需求场景推荐方案优点缺点
简单随机数Math.random()语法简单线程安全差,性能低
高并发随机数ThreadLocalRandom线程安全,性能高仅支持Java 7+
高精度计算BigDecimal精度可控制代码复杂度高
科学计算(如物理引擎)Math.sin/cos/tan 等内置优化,精度可靠需注意角度单位转换

四、可视化流程图:Math 类方法分类

 

五、实战对比:生成1~100随机整数

// 方案1:Math.random()
int r1 = (int)(Math.random() * 100) + 1;// 方案2:ThreadLocalRandom
int r2 = ThreadLocalRandom.current().nextInt(1, 101);// 性能对比:100万次调用耗时
// Math.random(): ~120ms 
// ThreadLocalRandom: ~80ms

六、专有名词说明表

术语解释
JDKJava Development Kit,Java开发工具包
API应用程序编程接口,提供预定义功能
线程安全多线程环境下数据一致性保障
浮点数精度丢失小数在计算机中的二进制表示误差
BigDecimalJava 提供的高精度数值计算类
ThreadLocalRandomJava 7 引入的线程绑定随机数生成器
弧度(Radian)角度单位,180°=π 弧度

七、总结

Math 类是 Java 开发的 瑞士军刀,从随机密码生成到游戏物理引擎计算,都离不开它。
选择建议: 

  • 简单场景用 Math.random() 和 Math.pow()
  • 高并发场景优先 ThreadLocalRandom
  • 金融/科学计算结合 BigDecimal

扩展思考:如果让你设计一个抽奖概率算法,会如何利用 Math 类实现?

 

🚧 您已阅读完全文99%!缺少1%的关键操作:
加入「炎码燃料仓」🚀 获得:
√ 开源工具红黑榜
√ 项目落地避坑指南
√ 每周BUG修复进度+1%彩蛋
(温馨提示:本工坊不打灰工,只烧脑洞🔥) 

 

http://www.yayakq.cn/news/412416/

相关文章:

  • 北京知名的网站建设公司网站 linux 服务器
  • 提高整个网站权重wordpress无法加载媒体库
  • 做推广的网站带宽需要多少合适企业做网站的目的是什么
  • 网站广告设计怎么做android官网入口
  • 建网站用什么浏览器设计店名logo
  • android项目开发东莞网站关键词优化收费
  • 夏都西宁吧百度seo关键词优化si
  • 三亚市住房和城乡建设厅网站软件开发项目经理招聘
  • ui设计师工资南京百度seo公司
  • 做社交网站用什么语言网站建设套餐方案
  • 咸阳学校网站建设哪家好免费素材下载网站有哪些
  • 网站备案号 链接北京市工程建设交易网
  • 建站公司主要做那些业务深圳创意设计网站
  • 网站购买流程长沙在线建站模板
  • 人力资源三网站建设浙江省建设厅官方网站
  • 阿里外贸平台网站建设腾讯企点收费标准
  • 做站群的网站要备案吗如何汇报网站建设
  • 如何做seo网站设计平台兼职
  • 下载爱城市网app官方网站网站移动端开发需要哪些技术
  • phpcms做网站建栏目让别人做网站的步骤
  • 郑州网站制作开发做微博推广的网站吗
  • 门户网站开发视频长沙做官方网站
  • 济南网站制作价格在线设计公司logo图标
  • 十大博客网站宜章网站建设
  • 免费综合网站注册申请网站开发总结与收获
  • 做视频网站技术壁垒在哪里磁县邯郸网站建设
  • 手机网站模板免费app开发公司招聘
  • 做网站培训班域名注册网站系统
  • 有什么网站可以做毕业影像衡水网站托管
  • 如何做商城网站知识库搭建工具