如何随机产生指定范围不重复的随机数

怎么产生指定范围不重复的随机数  例如 1-18     19-36?产生这个指定范围的随机数

int[] ints = ThreadLocalRandom.current().ints(1, 10).distinct().limit(9).toArray();

1开始范围(包含),10结束范围(不包含),distinct()(去重复),limit(9)(取9个随机数,因为1~10不包含10的话只有9个)

	public static int[] fun(int m, int n) {
		int[] ints = ThreadLocalRandom.current().ints(m, n + 1).distinct().limit(n - m + 1).toArray();
		return ints;
	}

程序测试结果:

 

如有帮助,望采纳。点击我回答右上角【采纳】按钮。