Esta es una pregunta estilística. Quiero hacer un bucle dos veces con una variable on
que se establece en falso, luego en verdadero. ¿Cuál de estos es más claro:java: bucle en los dos valores booleanos (falso, verdadero)
A)
for (final boolean on : new boolean[] { false, true})
{
doStuffBasedOnABooleanFlag(on);
}
B)
for (int i = 0; i < 2; ++i)
{
final boolean on = (i == 1);
doStuffBasedOnABooleanFlag(on);
}
C) algo más
edición: ley de interpretaciones no deseadas de Murphy entra en juego. .. el caso de uso que originalmente me pareció algo así en lugar de doStuffBasedOnABooleanFlag:
for (final boolean on : new boolean[] { false, true})
{
JButton button = on ? onButton : offButton;
button.addActionListener(new ActionListener() {
@Override public void actionPerformed(ActionEvent event) {
doStuffLaterBasedOnABooleanFlag(on);
}
}
}
Pero creo que me gusta la respuesta de Brendan, sólo voy a refactorizar el contenido de bucle en un método separado:
doStuffBasedOnABooleanFlag(false);
doStuffBasedOnABooleanFlag(true);
...
private void doStuffBasedOnABooleanFlag(final boolean on)
{
JButton button = on ? onButton : offButton;
button.addActionListener(new ActionListener() {
@Override public void actionPerformed(ActionEvent event) {
doStuffLaterBasedOnABooleanFlag(on);
}
}
}
Supongo que accidentalmente respondiste tu propia pregunta y acabo de ayudarte a darte cuenta? –
heh, yeah .... :-) –