論理演算子と短絡評価
&&、||、!で条件を組み合わせ、短絡評価を理解します。
「論理演算子と短絡評価」は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フィードバックを取得できます。ローカル設定は不要です。