【Swift】論理演算子

前回の記事で真理値型と比較演算子について書きましたが、論理演算子も条件分岐をして処理を分ける時などによく使われる演算子で、比較演算子とセットで使うこともあります。比較した値はBool値で返ってきます。
まずは論理演算子の種類を見ていきましょう。

logical-operatorアイキャッチimg

前回は 真理値型と比較演算子 について記事を書きました。

今回は 論理演算子 について書いていこうと思います。

論理演算子とは

前回の記事で真理値型と比較演算子について書きましたが、論理演算子も条件分岐をして処理を分ける時などによく使われる演算子で、比較演算子とセットで使うこともあります。比較した値は Bool値 で返ってきます。Bool型 についてはこちらの記事で紹介しています。

まずは論理演算子の種類を見ていきましょう

論理演算子の種類

各論理演算子の true になる場合と false になる場合をまとめてみました。

|| は shiftキー を押しながら ¥マーク 2 回。(Mac)
論理演算値truefalse
&&true && truetrue && false
false && true
false && false
||true || true
true || false
false || true
false || false
!! false! true

論理演算子を使った例

&& (and)

&& は、〜かつ〜 という意味で、論理積とも言います。左辺と右辺の値がどっちも true であれば true、どちらかが false、または両方 false であれば false になる演算子です。

//定数a,b,cにそれぞれtrueかfalseを代入
let a = true
let b = false
let c = true
var d:Bool

//&&
d = a && b //false
d = a && c //true

&&
左辺と右辺がどっちも true の場合のみ true になる演算子なので a && bfalse で、a && ctrue という結果になります。

|| (or)

|| は、〜または〜 という意味で、論理和とも言います。左辺と右辺どちらかが true であれば true、両方 false の場合のみ false になる演算子です。

//定数a,b,cにそれぞれtrueかfalseを代入
let a = true
let b = false
let c = true
var d:Bool

//||
d = a || b
print(d) //true
d = a || c
print(d) //true
d = b || b
print(d) //false

||
左辺か右辺の値がどちらかでも true であれば true になる演算子なので、b || bfalse、それ以外は true という結果になります。

! (not)

! は、〜でない という意味で、否定とも言います。Bool値の前に ! を付けることで、true を false に、false を true に変える事ができる演算子です。

//定数a,b,cにそれぞれtrueかfalseを代入
let a = true
let b = false
let c = true
var d:Bool

//!
d = !a
print(d) //false
d = !b
print(d) //true

!
a に入っている値は true ですが、! a とすると false に変わっています。

logical-operatorコードimg

以上 論理演算子 についてでした。
結構よく使うので押さえておきたいポイントだと思います。

次回は if文 について書いていこうと思います。

実行環境

version
Xcode 14.2 (14C18)
Swift 5.2.4

公式ドキュメント

https://docs.swift.org/swift-book/documentation/the-swift-programming-language/

投稿者: tomo

30代経験ゼロからプログラミングを始めて、趣味でiOSのアプリを作って遊んでる人。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です