import java.util.Random;
public class GenerateNDigitNumber {
public static long generateNDigitNumber(int n) {
if (n < 1) {
throw new IllegalArgumentException("n must be a positive integer (>= 1).");
}
Random random = new Random();
long lowerBound = (n > 1) ? (long) Math.pow(10, n - 1) : 0;
long upperBound = (long) Math.pow(10, n) - 1;
long range = upperBound - lowerBound + 1;
long r = (Math.abs(random.nextLong()) % range) + lowerBound;
return r;
}
public static void main(String[] args) {
System.out.println(generateNDigitNumber(1));
System.out.println(generateNDigitNumber(4));
System.out.println(generateNDigitNumber(10));
}
}
/*
run:
2
3584
7776729878
*/