真偽を表すBool型
Bool型
Yesか、Noか。既に行われたか、行われていないか。このような2つだけの値を扱いたい時、Bool型データのtrue/falseを使います。
1 2 3 4 5 6 7 |
//Bool型のデータは2つだけ true false //Bool型変数の宣言と代入 var pushButton: Bool = false //アプリでボタンが押された時 pushButton = true |
・使い方例:フラグ
例えば上記のように、pushButton変数に、false(ボタンはまだ押されていない)という値を設定しておき、あるボタンが押された時だけtrueとするコードを書いたとします。
画面の移動が行われた時に、pushButton変数が
trueだったら→ボタンが押されているのでAの処理を行う
falseだったら→ボタンは押されていないのでBの処理を行う
といった場合分けの処理を書くことができます。
pushButton変数を「フラグ」と言ったり、条件を満たしたことを「フラグが立つ」と表現したりします。
Bool型(論理値)の演算
※この内容は、後に出てくる分岐処理(if構文、場合分けの処理)で意味をもってきます。
一旦は、このようなデータの扱いができることを頭に置いておき、後々見返しにきてください。
Bool型の「真」(true)であるか「偽」(false)であるか、という値は、論理値や、真理値 ・ 真偽値という呼ばれ方をされています。「論理演算」といった名前で調べると1度は目にしたことのある表が出てくるはずです。
まずは論理値の計算に使う「論理演算子」をみていきましょう。
下記コードをPlayGroundで実際に確かめてみてください。
・&&:かつ、&、両方の条件が満たされていること(AND演算)
1 2 3 |
true && true //左辺も右辺も条件満了(true)なのでOK true && false //右辺の条件が満たされていない(false)のでNo false && false //どちらも条件が満たされていない(false)のでNo |
・||:それとも、or、どちらかの条件が満たされていること(OR演算)
1 2 3 |
true || true //左辺と右辺どちらかが条件満了(true)していれば良いのでOK true || false //左辺で条件満了(true)しているのでOK false || false //どちらも条件満了していない(false)のでNo |
例として以下の表に当てはめて考えてみてください
左辺 コンピュータを持っているか? |
両方必須か(&&)、 必要条件(||)か |
右辺 プログラミングが好きか? |
左辺と右辺の質問を、プログラマー適正の条件とします。
これを両方必須とするか、どちらかが必要とするか、を考え設定します。
答える人の状況に応じて左辺と右辺の値は変わりますので、アンケートに答える人になったつもりで値を入れてみてください。
実行結果に応じて、適正があるかないか、という判断が出ることとします。
・!:逆、not、対象の値の反転(NOT演算)
1 2 3 |
!true !false !(true || false) |
結果を反転させます。定数・変数だけでなく、式の頭にもつけて反転させることができますので覚えておきましょう。