【发布时间】:2015-05-02 04:46:42
【问题描述】:
在某些时候,我想随机化一个数组在创建时是否会反转。
我想到的第一件事是:
bool reverse = Random.value > 0.5f;
for (
int i = reverse ? steps - 1 : 0;
reverse ? i >= 0 : i < steps;
i += reverse ? -1 : +1
) {
rotateScript.angles.Add(angleRange[0] + stepAdder * i);
}
后来我意识到,尽管需要更多的行,但 if/else 中的两个 for 循环会更具可读性。
但问题仍然存在:这些三元条件会在每次迭代中执行一次,还是只执行一次?
【问题讨论】:
标签: c# performance for-loop parameters reverse