我如何缩短这些值检查
本文关键字:检查 何缩短 | 更新日期: 2023-09-27 18:07:19
我正在制作一个基于类型随机生成星星的系统。第一部分当然是根据稀有性告诉系统它是什么类型的恒星。我有困难缩短基于随机数生成器的实际分配部分。这是我目前的解决方案。
void StarTypeGen () {
randomGen (x: 0, y: 229000);
if (Rng <= 228000) {
StarType++;
if (Rng <= 36000) {
StarType++;
if (Rng <= 22500) {
StarType++;
if (Rng <= 9000) {
StarType++;
if (Rng <= 3750) {
StarType++;
if (Rng <= 1875) {
StarType++;
if (Rng <= 10) {
StarType++;
}
}
}
}
}
}
}
}
用值预加载数组,并在第一个条件为假时中断循环:
int[] nums = new int[] { 228000, 36000, 22500, 9000, 3750, 1875, 10 };
for (int i = 0; i < nums.Length; i++)
{
if (Rng > nums[i]) break;
StarType++;
}