(((int)Math.round(Math.random()×4321))%200)+55
这个表示生成的随机数怎么感觉这么怪,我的要求是三原色,范围在0~255所以求解怎么回事

解决方案 »

  1.   

    Math.random()  产生的是0到1之间的数字Math.round是取整(((int)Math.round(Math.random()×4321))%200)  就是产生一个0到199的数字,后面加上55,就是55到254之前的数字
      

  2.   

    (((int)Math.round(Math.random()×4321))%200)
    分析一下首先
    Math.random()×4321会得出数值为0~4321
    然后%200也就是取200的余数  会得出值0~199(除数如果大于被除数200则  余数只有可能是0~199 所以说上面步骤中4321也只是一个随机数 一个大于200的随机数)最后一个步骤加55
    由于(((int)Math.round(Math.random()×4321))%200)我们推测出得出值为0~199
    所以再加上这一步骤我们得出的值为55~255所以如果想要拿到0~255数值请用 (((int)Math.round(Math.random()*12345))%256)欢迎指正,嘿嘿嘿
      

  3.   

    woc我才发现是我想错了,一拍大腿,当时想成了4321%200等于121,121加55,然后就一脸懵逼,当时脑子短路了
      

  4.   

    woc我才发现是我想错了,一拍大腿,当时想成了4321%200等于121,121加55,然后就一脸懵逼,当时脑子短路了
      

  5.   

    woc我才发现是我想错了,一拍大腿,当时想成了4321%200等于121,121加55,然后就一脸懵逼,当时脑子短路了
    想清楚就好了。
    如果有满意答案了,记得结贴。 一楼右上角,结贴。
      

  6.   

    woc我才发现是我想错了,一拍大腿,当时想成了4321%200等于121,121加55,然后就一脸懵逼,当时脑子短路了
    想清楚就好了。
    如果有满意答案了,记得结贴。 一楼右上角,结贴。
    等等结贴。我不会请您手把手教我一下