iOS/Swift

연산자

밤새는 탐험가89 2024. 1. 9. 12:49

스위프트에서 연산자는 특정한 문자로 표현한 함수

 

연산자의 분류

분류 설명
단항 연산자 피연산자가 한 개인 연산자 !A
이항 연산자 피연산자가 두 개인 연산자  A + B
삼항 연산자 피연산자가 세 개인 연산자  A? B : C
전위 연산자 연산자가 피 연산자 앞에 위치하는 연산자 !A
중위 연산자 연산자가 피연산자 사이에 위치하는 연산자 A + B
후위 연산자 연산자가 피연산자 뒤에 위치하는 연산자 A!

 

 

 

연산자의 종류 

 

할당 연산자 

A = B 

A에 B라는 값을 할당 

 

 

산술 연산자 

+ , - , * , / , % 같은 사칙연산 

 

 

비교 연산자 

두 값을 비교할 때 사용

==, >= ,>, != 등의 비교연산 

 

★ "==" 와 "==="의 차이 ★

A == B : A와 B가 같은 값인지 비교하여 불리언 값을 반환

A === B: A와 B가 참조(레퍼런스) 타입일 때,

A와 B가 같은 인스턴스를 가리키는지 비교하여 불리언 값 반환 

 

 

삼항 연산자 

피연산자가 세 개인 삼항 조건 연산자 

조건식 ? A : B 

조건식이 참이면 A를 거짓이면 B를 반환 

 

삼항 조건 연산자의 사용

var numA: Int = 10
var numB: Int = 100

let resultNum: String = numA < numB ? "NumberA가 작다" : "NumberB가 작다"
print(resultNum)

 

 

 

부울 연산자 

블리언 값의 논리 연산

!, $$, || (NOT, AND, OR)

 

 

 

복합 할당 연산자 

할당 연산자와 다른 연산자가 하는 일을 

한 번에 할 수 있도록 연산자 결합

var numA: Int = 10
var numB: Int = 100


numB += numA
// numB = numB + numA 와 같은 표현
print(numB)

 

" + "  대신 다른 사칙연산자를 넣으면

해당 사칙 연산자에 맞는 연산한 결과를 할당

 

 

기타 연산자 

연산자 부호 설명
nil 병합 연산자 A ?? B A가 nil이 아니면 A를 반환, A가 nil 이면 B 반환
부호변경 연산자 ~A A의 부호 변경
옵셔널 강제 추출 연산자 A! A의 값을 강제로 추출
옵셔널 연산자 A? A의 값을 안전하게 추출 또는 A의 데이터 타입이 옵셔널임을 표현