The following example generates a set of random numbers between a start value and a max value without going over the desired maximum number.
import java.util.Random;
public class RandomNumbers {
  public static void main(String[] args) {
    GetIncreasingInts(20, 3, 101);
    }
  public static void GetIncreasingInts(int numIntsToGet, int start, int max) {
    if (numIntsToGet > 0 && start >= 0 && max > 0) {
      Random random = new Random();
      int nextStart = start;
      int num = -1;
      for (int index = 0; index < numIntsToGet; index++) {
        if ((max - 1) <= nextStart)
          break;
        else {
          num = nextStart + random.nextInt(max - nextStart);
          nextStart = num;
          System.out.println("Number: " + num);
        }
      }
    }
  }
}