通过以下方式可以很容易地在 0 和 1 之间“切换”:
int i = 0;
i = (++i) % 2; // i = 1
i = (++i) % 2; // i = 0
同样,我发现可以在 3 和 5 之间“切换”:
int i = 3;
i = (((i * 2) - 1) % 3) + 3; // i = 5
i = (((i * 2) - 1) % 3) + 3; // i = 3
虽然这感觉很麻烦,但我正在寻找一种更简洁的方法来做到这一点。可以简化吗?如果是这样,怎么做?顺便说一句,我实际上正在使用它。