Если вы используете логические значения NULL и считаете их ложными, попробуйте следующее:
static public boolean toggle(Boolean aBoolean) {
if (aBoolean == null) return true;
else return !aBoolean;
}
Если вы не передаете логические значения NULL, попробуйте следующее:
static public boolean toggle(boolean aBoolean) {
return !aBoolean;
}
Это cleanest , потому что они показывают намерение в сигнатуре метода, легче читаются по сравнению с оператором ! и легко отлаживаются.
Использование
boolean bTrue = true
boolean bFalse = false
boolean bNull = null
toggle(bTrue) // == false
toggle(bFalse) // == true
toggle(bNull) // == true
Конечно, если вы используете Groovy или язык, который допускает методы расширения, вы можете зарегистрировать расширение и просто сделать:
Boolean b = false
b = b.toggle() // == true