我想在Java中创建一个随机整数数组(min& max),但我希望每个随机生成的数字彼此之间有一个偏移距离。
即。假设我想创建一个包含20到100之间10个整数的数组列表,偏移/距离应为5.数组可能是21,28,35,52,58,65,72,80,86,95 。
非常感谢
答案 0 :(得分:0)
简单变体(不处理溢出):
int min;
int max;
int offset;
public int getRandomNumber(int current) {
int curMin = current - offset;
if (curMin < min)
curMin = min;
int curMax = current + offset;
if (curMax > max)
curMax = max;
return curMin + (int) ( Math.random() * (curMax - curMin + 1));
}
获得第一个数字:
int first = min + (int) ( Math.random() * (max - min + 1));