Loogiset operaattorit ja oikosulkuarviointi
Yhdistä ehtoja operaattoreilla &&, || ja ! sekä opi ymmärtämään oikosulkuarviointi.
Loogiset operaattorit ja oikosulkuarviointi on ilmainen Swift Academy-oppitunti CoddyKitissä. Tämä on oppitunti 3/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu Swift Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Swift Academy-kurssilla on yhteensä 4 oppituntia.
Loogiset operaattorit
Loogiset operaattorit yhdistävät Bool-arvoja: AND &&, OR || ja NOT !. Ne ovat olennaisia ehtojen muodostamisessa.
let isWeekend = true
let isSunny = false
print(isWeekend && isSunny)
print(isWeekend || isSunny)
print(!isSunny)Looginen NOT
!-operaattori kääntää totuusarvon: true muuttuu arvoksi false ja päinvastoin.
let loggedIn = false
if !loggedIn {
print("Please log in")
}Looginen AND
&& on true vain silloin, kun molemmat operandit ovat tosia. Käyttäkää sitä, kun kaikkien ehtojen on täytyttävä.
let hasTicket = true
let hasID = true
let canEnter = hasTicket && hasID
print("Can enter:", canEnter)Looginen OR
|| on true, kun vähintään yksi operandi on tosi. Käyttäkää sitä, kun mikä tahansa ehto riittää.
let isAdmin = false
let isOwner = true
let canEdit = isAdmin || isOwner
print("Can edit:", canEdit)AND- ja OR-operaattoreiden yhdistäminen
Voitte yhdistää operaattoreita. &&-operaattorilla on suurempi etusijajärjestys kuin ||-operaattorilla, mutta sulkeet tekevät monimutkaisista ehdoista helpommin luettavia.
let age = 20
let hasGuardian = false
let allowed = (age >= 18) || hasGuardian
print("Allowed:", allowed)AND-operaattorin oikosulkulaskenta
Swift käyttää oikosulkulaskentaa: lausekkeessa a && b Swift ei koskaan arvioi kohtaa b, jos a on false, koska tulos on jo varmasti false.
func sideEffect() -> Bool {
print("sideEffect ran")
return true
}
let result = false && sideEffect()
print("Result:", result)OR-operaattorin oikosulkulaskenta
Vastaavasti lausekkeessa a || b Swift ohittaa kohdan b, jos a on true. Oikea puoli tarkistetaan vain tarvittaessa.
func sideEffect() -> Bool {
print("sideEffect ran")
return false
}
let result = true || sideEffect()
print("Result:", result)Miksi oikosulkulaskennalla on merkitystä
Oikosulkulaskennan ansiosta voitte sijoittaa ensin nopean tai turvallisen suojatarkistuksen, joka suojaa sen jälkeen tehtävää kallista tai riskialtista tarkistusta. Operandien järjestyksellä on merkitystä.
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")
}Arviointijärjestys vasemmalta oikealle
Operandit arvioidaan vasemmalta oikealle. Kun ratkaiseva ehto sijoitetaan ensin, tarpeettoman tai vaarallisen koodin suorittaminen voidaan välttää.
func check(_ label: String, _ value: Bool) -> Bool {
print("checking", label)
return value
}
let r = check("A", false) && check("B", true)
print("Final:", r)Monimutkaisten ehtojen muodostaminen
Oikeat ohjelmat yhdistävät usein useita tarkistuksia. Ryhmitelkää ehdot sulkeilla, jotta täsmällinen logiikka tulee esiin ja koodi pysyy helppolukuisena.
let temp = 25
let humidity = 40
let comfortable = (temp >= 18 && temp <= 26) && (humidity < 60)
print("Comfortable:", comfortable)Yhdistettyjen ehtojen negaatio
Ehdon ympäröiminen muodolla !(...) kääntää koko ehdon päinvastaiseksi. De Morganin lakien mukaan !(a && b) vastaa lauseketta !a || !b.
let a = true
let b = false
print(!(a && b))
print(!a || !b)Pikatarkistus
Päätelkää, miten oikosulkulaskenta toimii.
Kertaus: loogiset operaattorit ja oikosulkulaskenta
Opitte operaattorit &&, || ja !, että && pysähtyy ensimmäiseen false-arvoon ja || ensimmäiseen true-arvoon sekä kuinka tämä vasemmalta oikealle etenevä oikosulkulaskenta antaa alussa olevan suojatarkistuksen suojata seuraavaa tarkistusta.
let list = [1, 2, 3]
let i = 10
let safe = i < list.count && list[i] == 2
print("Safe and matched:", safe)Opi Swift tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 122
- Oppitunnit
- 409
Usein kysytyt kysymykset
Onko oppitunti ”Loogiset operaattorit ja oikosulkuarviointi” ilmainen?
Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa Swift Academy-oppimispolun 3 oppituntia, myös oppitunnin “Loogiset operaattorit ja oikosulkuarviointi”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Swift Academy-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”Loogiset operaattorit ja oikosulkuarviointi”?
Yhdistä ehtoja operaattoreilla &&, || ja ! sekä opi ymmärtämään oikosulkuarviointi. Harjoittelet Swift Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Swift Academy-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Swift Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 3/4.
Kuinka kauan ”Loogiset operaattorit ja oikosulkuarviointi”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Swift Academy-oppitunnilla?
Kyllä. Jokainen Swift Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- Aritmeettiset ja yhdistetyn sijoituksen operaattorit
- Vertailu- ja identiteettioperaattorit
- Loogiset operaattorit ja oikosulkuarviointi
- Bitti- ja ylivuoto-operaattorit