比如输入 a , b 取之间的随机数
    用 int num = (int)(a + Math.random()*(b-a+1));     输入的 a比b小 没问题     但是输入 a比b大 怎么也能出来       后面不是就成负数了么?

解决方案 »

  1.   

    现在只利用Math.random()这个 不说Random
      

  2.   

    java api说,Math.random()也是用Random.
    a比b大就交换呗。
      

  3.   

    用 int num = (int)(a + Math.random()*(b-a+1));a比b小:结果范围是a 到 b之间的随机数
    a比b大:结果范围是 b+1 到 a-1之间的随机数
    自己考虑一下看看。
      

  4.   

    a比b大时,a加一个负数,是不是比a小啊(但又比b大)
      

  5.   

    int num = (int)((a<b ? a : b) + Math.random()*((a<b ? b : a)-(a<b ? a : b)+1));
      

  6.   

    我在群里就说的是Random。。你不用 。。现在看来问题还是解决的不够彻底啊