booleanを反転(トグル)させる方法4選

 コードを書いていると、booleanの状態を反転させたいケースがあります。

様々なコーディング方法

 プログラミングは、求まる結果はひとつでも、どのように実装するかは自由ですし、様々な方法があります。

 今回は、Javaを例にとって色々やってみましょう。

if~elseで普通に書く

 普通に書いてみます。


private boolean sw = false; if(sw == true){ sw = false; }else{ sw = true; }

 普通ですね。

 プログラミングを覚えたての人でもこれなら簡単に書けます!

三項演算子使ってみる

 ちょっとテクニカルなフリをしてみます。

private boolean sw = false;

sw = sw ? false : true;

 おっ。なんかそれらしいですね。デキる人みたいです。ただ読みづらいですね。

 一目で何が行われているかわかりづらく、良いコードとは言えません。

演算子を使ってみる

 無理やりやってみます。

private boolean sw = false;

sw = (sw == false);

 目的は達成できていますが、これもわかりづらいですよね。

否定演算子を使ってみる

 これが本命でしょう。

private boolean sw = false;

sw = !sw;

 非常に分かりやすく、簡潔です。

まとめ

 単純な動作ひとつとっても、様々な実現方法があります。

 答えはいくつもありますので、最適な方法は自分で探すしかありません。

 多くのプログラマにとって読みやすいコードを書くことを心掛けたいものです。

2018/3/12コード例から型が抜けていた問題を修正。
ご指摘ありがとうございます!