🔥 산술 연산자

377자
4분

안녕하세요? 오늘은 Swift에서 사용되는 산술 연산자에 대해 알아보도록 하겠습니다.

Swift는 모든 숫자 타입에 대해 4가지 기본 산술 연산자를 지원합니다:

  • 덧셈 (+)
  • 뺄셈 (-)
  • 곱셈 (*)
  • 나눗셈 (/)

아래 코드를 통해 이 연산자들이 어떻게 사용되는지 살펴볼까요?

let sum = 1 + 2       // sum은 3
let diff = 5 - 3      // diff는 2
let product = 2 * 3   // product는 6
let quotient = 10.0 / 2.5  // quotient는 4.0
swift

C나 Objective-C와 달리 Swift의 산술 연산자는 기본적으로 값의 오버플로우를 허용하지 않습니다. 만약 값 오버플로우 동작을 원한다면 Swift의 오버플로우 연산자(a &+ b 등)를 사용하시면 됩니다.

덧셈 연산자는 문자열 연결에도 사용될 수 있답니다.

let greeting = "hello, " + "world"  // greeting은 "hello, world"
swift

나머지 연산자

나머지 연산자 (a % b)는 ba 안에 몇 번 들어갈 수 있는지 계산하고, 나머지 값을 반환합니다(이를 remainder 라고 합니다).

9 % 4를 계산한다고 가정해 봅시다. 먼저 9 안에 4가 몇 번 들어가는지 계산합니다:

lecture image

9 안에는 4가 2번 들어갈 수 있고, 나머지는 1입니다(주황색으로 표시).

Swift에서는 다음과 같이 작성할 수 있습니다:

let remainder = 9 % 4   // remainder는 1
swift

a % b의 결과를 결정하기 위해, % 연산자는 다음 공식을 계산하고 나머지(remainder)를 출력으로 반환합니다:

a = (b x 어떤 배수) + remainder

여기서 어떤 배수a 안에 들어갈 수 있는 b의 최대 배수입니다.

94를 이 공식에 대입하면:

9 = (4 x 2) + 1

이 방법은 a가 음수일 때도 동일하게 적용됩니다:

  • 94를 공식에 대입하면:
  • 9 = (4 x 2) + 1

따라서 나머지 값은 -1이 됩니다.

b가 음수인 경우에는 b의 부호는 무시됩니다. 즉, a % ba % -b는 항상 같은 답을 줍니다.

단항 마이너스 연산자

숫자 값의 부호는 접두사 -를 사용하여 반전시킬 수 있습니다. 이를 단항 마이너스 연산자 라고 합니다:

let three = 3
let minusThree = -three       // minusThree는 -3
let plusThree = -minusThree   // plusThree는 3, 즉 "minus minus three"
swift

단항 마이너스 연산자(-)는 공백 없이 직접 피연산자 앞에 붙습니다.

단항 플러스 연산자

단항 플러스 연산자 (+)는 단순히 피연산자의 값을 변경 없이 그대로 반환합니다:

let minusSix = -6
let alsoMinusSix = +minusSix  // alsoMinusSix는 -6
swift

단항 플러스 연산자는 실제로는 아무 동작도 하지 않지만, 음수에 단항 마이너스 연산자를 사용할 때 양수에 대해서도 대칭성을 제공하기 위해 사용할 수 있습니다.