废话不多说,直接上代码
public class A {
public static void main(String[] args) {
int total = 10000;
int count = 5;
// 临时数,用来控制随机数的范围
int temp = total;
// 计算已经获取的总额
int tempCount = 0;
List<Integer> result = new ArrayList<>(count);
int t;
for (int i = 0; i < count; i++) {
// 最后一次用总数减去之前所有数
if (i == count - 1) {
t = total - tempCount;
result.add(t);
break;
}
// 随机数
t = new Random().nextInt(temp);
// 将下次随机数的范围减少
temp -= t;
result.add(t);
// 计算已得到的数总和
tempCount += result.get(i);
}
System.out.println(result);
}
}