在JAVA里如何生成一个大于0小于等于100
和大于11小于等于100的随机数呢??

解决方案 »

  1.   

    第一个就不说了,随便查下api就解决了
    第二个说下,先生成一个0-89的随机数,然后把它加上11就是11-100的了
      

  2.   

    import java.util.Random;public class c
    {
    public static void main(String [] args)
    {
    Random r = new Random();
    int num1 = r.nextInt(100);
    int num2 = r.nextInt(89);
    System.out.println(num1);
    System.out.println(num2+11);
    }
    }
      

  3.   

    另一种方法:
    int n = (int)(Math.random() * 100);
      

  4.   

    Random r = new Random();在JAVA里如何生成一个大于0小于等于100  r.nextInt(100) + 1
    和大于11小于等于100的随机数呢??     r.nextInt(89) + 12;
      

  5.   

    2楼还有个数字忘记了啊,实际上那个程序的出的结果并不是你想要的:大于0小于等于100,大于11小于等于100的随机数,因为int num1 = r.nextInt(100);int num2 = r.nextInt(89);完全可以都随机为0,System.out.println(num1);System.out.println(num2+11);就分别是:0;11
    这样就并不是大于0,大于11 了...
      

  6.   

    package com;import java.util.Random;public class Randoms { public Randoms() {
    super();
    // TODO Auto-generated constructor stub
    } /**
     * @param args
     */
    public static void main(String[] args) {
    // TODO Auto-generated method stub Random rand = new Random();
    int rand1 = rand.nextInt(100);
    int rand2 = rand.nextInt(89);
    if(rand1 == 0)
    {
    rand1 +=1;
    }
    if(rand2 == 0)
    {
    rand2 +=1;
    }
    System.out.println("rand1 bettwn 0 to 100: "+rand1);
    System.out.println("rand2 bettwn 0 to 89: "+(rand2+11));
    }}这样就完全可以了......
      

  7.   

    Ramdom r = new Ramdom();
    r.nextInt(101);
    r.netInt(89)+11;
      

  8.   

    nextInt
    public int nextInt(int n)返回一个伪随机数,它是从此随机数生成器的序列中取出的、在 0(包括)和指定值(不包括)之间均匀分布的 int值。nextInt 的常规协定是伪随机地生成并返回指定范围中的一个 int 值。所有 n 个可能 int 值的生成概率(大致)相同。
    ————————————————————————————
    根据上面java里public int nextInt(int n)这里的n值是永远取不到的(thinking in java里也说过)。因此如果用nextInt(100)那个随机数等于100是永远取不到的。
    所以我认为应该写下面成这样:
    while(true){
    a=rand.nextInt(100+1);
    if(a>0&&a<=100)break;//生成一个大于0小于等于100

    }
    while(true){
    b=rand.nextInt(90)+11;
    if(a>11&&a<=100)break;//大于11小于等于100的随机数呢
    }