cruz是脾气暴躁的老妖婆 2021-08-24 22:14 采纳率: 90%
浏览 83
已结题

关于Java中math random生成随机数的疑问



```java
public class Test{
    public static void main(String args[]){
        System.out.println( Math.random() );
        System.out.println( Math.random() );
    }
}

生成的数字是double类型的,但是代码里看不到任何与double有关的字眼,为什么会生成double类数字呢?

第二个问题:随机生成四位整数:


Math.random()*9000+1000  或 (int)((Math.random()*9+1)*1000)//可不可以后面是9999+1,并且我不理解第二个随机生成四位数整数的表达。

  • 写回答

4条回答 默认 最新

  • Pliosauroidea 2021-08-24 22:25
    关注

    第一个,random的返回值就是double的,直接用println输出了
    函数的定义在java库里,具体在哪忘记了你可以查一下
    第二个,random生成的数原始范围是0-1,只要你把他映射到1000-9999即可,比如*9000就是映射到0-9000,再加1000就是1000-10000(不包含10000),另一个写法是先映射到0-9,再加一,映射到1-10,再乘1000,最后也是映射到1000-10000
    有帮助望采纳

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 9月3日
  • 已采纳回答 8月26日
  • 创建了问题 8月24日

悬赏问题

  • ¥15 unity从3D升级到urp管线,打包ab包后,材质全部变紫色
  • ¥50 comsol温度场仿真无法模拟微米级激光光斑
  • ¥15 上传图片时提交的存储类型
  • ¥15 Ubuntu开机显示器只显示kernel,是没操作系统(相关搜索:显卡驱动)
  • ¥15 VB.NET如何绘制倾斜的椭圆
  • ¥15 arbotix没有/cmd_vel话题
  • ¥20 找能定制Python脚本的
  • ¥15 odoo17的分包重新供应路线如何设置?可从销售订单中实时直接触发采购订单或相关单据
  • ¥15 用C语言怎么判断字符串的输入是否符合设定?
  • ¥15 通信专业本科生论文选这两个哪个方向好研究呀