기본연산자 목록에 안넣어버린 논리연산자다.
이전에 데이터 타입 불을 다룰때 잠깐 했던거 같기도하다.
논리 연산은
참과 거짓에 대해 연산하는거다 그래서 기본적으로 boolean형식으로 값이 나온다.
Logical Not Operator
not 연산은 불 연산을 뒤집는연산이다.
만약 참에 대해 not 을 붙이면 거짓이 되고
거짓에 대해 not을 붙이면 참이된다.
not 연산자는 느낌표를 붙이면된다.
ex1:
var target = false
print(!target)
target = !target
print(target)
결과:
true
true
처음 target이 false이지만 print할때 ! 를, not 연산자를 붙여서 print할땐 true가 출력된다.
그다음엔 target에 !target을 해서 true값으로 변경된다.
Logical And Operator
and 연산은 두 불형식 값이 모두 참일때 참으로 결과가 나오는 연산이다.
연산자로는 &&를 사용한다.
단 여러 if문이 겹치는형태를 축약하는 형태로 같은 and역할을 하게 끔 할 수도 있다
ex2)
let target1 = false
let target2 = true
let target3 = true
if target1 && target2 {
print("이 글은 출력되지 않는다.")
}
if target2 && target3 {
print("두 값은 모두 참이다.")
}
if target2, target3 {
print("이렇게도 쓴다.")
}
if target1, target3 {
print("이 글은 출력되지 않는다.")
}
결과:
두 값은 모두 참이다.
이렇게도 쓴다.
Logical Or Operator
and를 했으니 이제 or이다.
둘중 하나만 참이면 참으로 결과가 나오는 연산이다.
위의 예제를 살짝 바꿔서 아래 예시를 만들어봤다.
ex2)
let target1 = false
let target2 = true
let target3 = true
if target1 || target2 {
print("이 글이 출력된다")
}
if target2 || target3 {
print("두 값중 하나는 참이다.")
}
결과:
이 글이 출력된다
두 값중 하나는 참이다.
연산자 파트를 모두 끝냈다!
다음엔 어떤 기본 강좌를 할지는 모르겠다.
반응형
'강의를해보고싶었어요 > [강좌] 언어 기본서' 카테고리의 다른 글
[스위프트 기본] 11. 열거형 enum (0) | 2022.09.19 |
---|---|
스위프트 언어 기본 목록 (0) | 2022.09.19 |
[스위프트 기본] 9. 범위 연산자 (0) | 2021.05.07 |
[스위프트 기본] 8. nil-coalescing 연산자 (0) | 2021.04.28 |
[스위프트 기본] 7. 3항 연산자 (0) | 2021.04.27 |