0Pricing
Swift Academy · レッスン

論理演算子と短絡評価

&&、||、!で条件を組み合わせ、短絡評価を理解します。

「論理演算子と短絡評価」はCoddyKit上の無料Swift Academyレッスンです。 これはレッスン3/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはSwift Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Swift Academyコースには全4レッスンが含まれています。

論理演算子

論理演算子はBoolの値を組み合わせます。ANDは&&、ORは||、NOTは!です。条件を組み立てるうえで欠かせません。

let isWeekend = true
let isSunny = false
print(isWeekend && isSunny)
print(isWeekend || isSunny)
print(!isSunny)

論理NOT

!演算子はブール値を反転させます。trueはfalseに、falseはtrueになります。

let loggedIn = false
if !loggedIn {
    print("Please log in")
}

論理AND

&&は、両方のオペランドがtrueの場合にのみtrueになります。すべての条件を満たす必要がある場合に使います。

let hasTicket = true
let hasID = true
let canEnter = hasTicket && hasID
print("Can enter:", canEnter)

論理OR

||は、少なくとも一方のオペランドがtrueの場合にtrueになります。どれか1つの条件を満たせばよい場合に使います。

let isAdmin = false
let isOwner = true
let canEdit = isAdmin || isOwner
print("Can edit:", canEdit)

ANDとORの組み合わせ

演算子は組み合わせて使えます。&&は||より優先順位が高くなりますが、複雑な条件を読みやすくするにはかっこを使います。

let age = 20
let hasGuardian = false
let allowed = (age >= 18) || hasGuardian
print("Allowed:", allowed)

ANDの短絡評価

Swiftは短絡評価を使用します。a && bでaがfalseの場合、結果はすでにfalseと決まっているため、Swiftはbを評価しません。

func sideEffect() -> Bool {
    print("sideEffect ran")
    return true
}
let result = false && sideEffect()
print("Result:", result)

ORの短絡評価

同様に、a || bでaがtrueの場合、Swiftはbを評価しません。右辺は必要な場合にのみチェックされます。

func sideEffect() -> Bool {
    print("sideEffect ran")
    return false
}
let result = true || sideEffect()
print("Result:", result)

短絡評価が重要な理由

短絡評価を使うと、安価または安全なチェックを先に配置し、その後に続くコストの高い、またはリスクのあるチェックを保護できます。オペランドの順序には意味があります。

let numbers = [10, 20, 30]
let index = 5
if index < numbers.count && numbers[index] > 0 {
    print("Safe access")
} else {
    print("Index out of bounds guarded")
}

左から右への評価順序

オペランドは左から右へ評価されます。判定結果を決める条件を先に置くと、不要または安全でないコードの実行を避けられます。

func check(_ label: String, _ value: Bool) -> Bool {
    print("checking", label)
    return value
}
let r = check("A", false) && check("B", true)
print("Final:", r)

複雑な条件を組み立てる

実際のプログラムでは、多くのチェックを組み合わせます。かっこでグループ化して正確な論理を表現し、読みやすさを保ってください。

let temp = 25
let humidity = 40
let comfortable = (temp >= 18 && temp <= 26) && (humidity < 60)
print("Comfortable:", comfortable)

複合条件を否定する

条件全体を!(...)で囲むと、全体を反転できます。ド・モルガンの法則により、!(a && b)は!a || !bと等しくなります。

let a = true
let b = false
print(!(a && b))
print(!a || !b)

理解度チェック

短絡評価について考えてみてください。

まとめ:論理演算子と短絡評価

&&、||、!、&&は最初のfalseで停止し、||は最初のtrueで停止すること、そしてこの左から右への短絡評価によって、先頭のガードで後続のチェックを保護できることを学びました。

let list = [1, 2, 3]
let i = 10
let safe = i < list.count && list[i] == 2
print("Safe and matched:", safe)

よくある質問

「論理演算子と短絡評価」レッスンは無料ですか?

はい。「論理演算子と短絡評価」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Swift Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Swift Academyコースには全4レッスンが含まれています。

「論理演算子と短絡評価」で何を学びますか?

&&、||、!で条件を組み合わせ、短絡評価を理解します。 ブラウザで直接実行するハンズオンコードでSwift Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Swift Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのSwift Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/4です。

「論理演算子と短絡評価」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このSwift Academyレッスンでコードを書いて実行できますか?

はい。すべてのSwift Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. 算術演算子と複合代入演算子
  2. 比較演算子と同一性演算子
  3. 論理演算子と短絡評価
  4. ビット演算子とオーバーフロー演算子
← Swift Academyに戻る