如何快速更改很多变量的值

时间:2016-11-24 17:04:31

标签: java

如果我有100个布尔变量x1..x100都设置为true,那么如何轻松快速地将它们全部设置为false而不进行当时的操作?它可以在一个简单的循环中完成吗(for,while)?

2 个答案:

答案 0 :(得分:2)

如果它们是单独的布尔变量,那么您所能做的就是明确地设置它们。你不能迭代它们,因为它们不在可迭代的结构中。

x1 = false;
x2 = false;
// ...
x100 = false;

(正如Elliott Frisch指出的那样,你可以将其缩短为x1 = x2 = ... = x100 = false;,但这并不是真正的重大改变 - 除了以相反的顺序设置变量之外)

但是,实际上,你不应该有100个这样的变量 - 它们非常笨拙,编写100个这样的任务很容易出错(你很容易错过一个,或者错误地设置两个)。

如果您使用数组,则可以在循环中设置它们:

for (int i = 0; i < x.length; ++i) x[i] = false;

或使用Arrays.fill

Arrays.fill(x, false);

或者,您可以使用BitSet,其setclear方法设置位数范围。

答案 1 :(得分:0)

您可以考虑使用BitSet。它有一个clear方法将所有位重置为false。