본문 바로가기
카테고리 없음

Boolean, 논리연산자

by GeekCode 2021. 9. 28.
반응형

Boolean 불리언 을 줄여 Bool 로 표기한다. Bool은 오직 True와 False 의 값만 가질 수 있는 데이터타입의 종류이다.

마치 토글처럼 말이다.

 

// --- Boolean

let yes = true
let no = false

Xcode에서는 Option  ( ⌥ ) 키를 누르고  마우스를 가져가면 속성을 볼수가 있다.

 

Bool은 주로 비교를 표현할 때 사용한다.

- 그것인지 아닌지

- 맞는지 틀린지

- 진짜인지 가짜인지

 

let isFiveGreaterThanSix = 5 > 6
// isFiveGreaterThanSix 라는 상수 안에 참인지 거짓인지 를 나타내는 Bool 값이 들어갔다.
// false

명제가 어떤 상황인지에 따라

참일땐, 거짓일땐 어떤 작업을 수행하도록 코드의 흐름을 제어한다.(목적)

 

let isFiveGreaterThanSix = 5 > 6  //false
// isFiveGreaterThanSix 라는 상수 안에 참인지 거짓인지 를 나타내는 Bool 값이 들어갔다.


if isFiveGreaterThanSix {
	print("---> 참")
} else {
	print("---> 거짓")
}

// ---> 거짓

 

if문의 사용

if 조건 .... {
  // 조건이 참인 경우에 수행하는 코드를 여기에 !!
} else {
 //  그렇지 않은 경우에 수행하는 코드를 여기에 !!
}

/*

let [상수] = [명제]

이 상수는 명제가 갖고있는 불리언 값을 갖게 된다.
*/

// --- 예시만들기(1)

let a = 7
let b = 9

if a > b {
	print("---> a가 b보다 크다")
} else {
	print("---> b가 a보다 크다")
}

// ---> b가 a보다 크다




// --- 예시만들기(2)

let name1 = "John"
let name2 = "Michael"


let isTwoNameSame = name1 == name2
//false
// =는 어떠한 값을 할당하는 의미로 사용 ==는 equal의 의미로 사용

if isTwoNameSame {
	print("---> 이름이 같다")
} else {
	print("---> 이름이 다르다")
}

// ---> 이름이 다르다


// --- 예시만들기(3) 논리연산자

let door1 = "Closed"
let door2 = "Opened"
let isDoorOpened = door2 == "Opened"
// true

let isBlue = true

let doorOpenedAndBlue = isDoorOpened && isBlue
// Opened 면서 "동시에" 파랗다
// true

let isBlue = false
let doorOpenedOrBlue = isDoorOpened || isBlue
// true
// 둘중에 하나만 만족하더라도 true


let isDoorClosed = door1 == "Opened" 
//false
let isBlue = false

let doorOpenedOrBlue = isDoorClosed || isBlue
// 둘중에 하나만 만족해도 true 지만 둘다 false 이기에 false

 

if else 구문 이용해보기

let name = "Sujin"
let isSujin = name == "Sujin" //true
let greetingMessage: String

if isSujin {
	greetingMessage = "Hello Sujin"
} eles {
	greetingMessage = "Hello somebody"
}

print("Msg : \(greetingMessage)")

// "Msg : Hello, Sujin"

 

삼항연산자

let name = "Sujin"
let isSujin = name == "Sujin" //true

let greetingMessage: String = isSujin ? "Hello, Sujin" : "Hello, somebody"

print("Msg : \(greetingMessage)")

// "Msg : Hello, Sujin"

반응형