Random rand = new Random();
int i = rand.nextInt(1000000);
while(i<100000){
    i = rand.nextInt(1000000);
}

解决方案 »

  1.   

    Random random = new Random();
    int iRand1 = random.nextInt(999999);//前几个可能为0
    int iRand2 = 100000 + random.nextInt(899999);//前几个可能为0
    ...//use it
      

  2.   

    敲错了,更正:
    int iRand2 = 100000 + random.nextInt(899999);//首位不为0
      

  3.   

    class RandomUtil{
      private long i = 100000;
      public long next(){
         return i++;
      }
    }
    如果有多线程的话next()方法要同步
      

  4.   

    class RandomUtil{
      private long i = 100000;
      public long next(){
         if(i==1000000)
           System.out.print("将出现重复数据")//如果你调了900000次这个方法,用random也无法避免出现重复数字。
         return i++;
      }
    }
      

  5.   

    class RandomUtil{
      private long i = 100000;
      public long next(){
         if(i==1000000){
           i = 1000000;
           System.out.print("将出现重复数据")//如果你调了900000次这个方法,用random也无法避免出现重复数字。}
         return i++;
      }
    }
      

  6.   

    开个玩笑,liaoxingya276(独孤过客)你的算法是随机数,还是顺序序列发生器:)
      

  7.   

    楼主要随机的
    nieyc() 的方法不错