コードを書いていると、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コード例から型が抜けていた問題を修正。
ご指摘ありがとうございます!
ご指摘ありがとうございます!