728x90
변수와 상수의 선언 및 초기화
변수는 var, 상수는 let 키워드를 이용하여 다음과 같이 선언할 수 있다.
var [변수명] = [값]
let [상수명] = [값]
var num1 = 3
var num2 = 5
print(num1 + num2) // 8
let num3 = 2
let num4 = 4
print(num3 + num4) // 6
여기서 변수인 num1과 num2는 값을 변경할 수 있지만 상수인 num3과 num4는 값을 변경할 수 없고, 변경하려고 시도하면 에러가 발생한다.
데이터 타입
변수를 선언할 때 어떤 종류의 데이터인지를 다음과 같이 명시적으로 나타낼 수 있다.
var [변수명]: [데이터 타입] = [초기값]
var myInt: Int = 123 // 정수
var myFloat: Float = 1.234 // 부동소수(6자리)
var myDouble: Double = 1.23456789 // 부동소수(15자리)
var myCharacter: Character = "A" // 문자(1글자)
var myString: String = "Hello" // 문자열(1글자 이상)
var myBool: Bool = true // 참 or 거짓
Swift에서 주로 사용하는 데이터 타입은 위와 같다.
특히, Float와 Double은 표현할 수 있는 소수점 자리의 수에서 차이가 나고, Character는 1개의 글자를 가질 수 있는 반면 String은 1개 혹은 그 이상의 글자를 가질 수 있다.
연산자
1) 할당 연산자
var a = 1
var b = 2
print("a=\(a), b=\(b)") // a=1, b=2
a = b
print("a=\(a), b=\(b)") // a=2, b=2
등호(=) 1개를 사용하면 등호 오른쪽 변수의 값을 등호 왼쪽 변수에 할당 한다는 의미이다.
따라서 위의 코드에서는 b의 값을 a에 할당했기 때문에 최종적으로는 a와 b가 모두 2가 된다.
print("[문자열] \([변수명])")
참고로, 데이터 타입이 다른 여러 값들을 동시에 출력하고 싶다면 print 함수를 위와 같이 사용한다.
2) 산술 연산자
let a: Int = 10
let b: Int = 3
print(a + b) // 13
print(a - b) // 7
print(a * b) // 30
print(a / b) // 3
print(a % b) // 1
덧셈(+), 뺄셈(-), 곱셈(*), 나눗셈-몫(/), 나눗셈-나머지(%) 연산을 수행할 수 있다.
특히 a와 b가 모두 정수형이기 때문에 a / b 는 몫을 구하는 연산이 된다.
let c: Double = 10.0
let d: Double = 3.0
print(c / d) // 3.33333333
print(c % d) // 연산 불가능, 에러 발생
만약 a와 b가 모두 부동소수로 선언되었다면 / 연산은 우리가 실제로 하는 나눗셈 연산과 같다.
하지만 % 연산은 정수끼리의 연산만 가능하기 때문에 에러가 발생한다.
3) 복합 할당 연산자
var num = 1
num += 1 // num = 2
var num = 1
num -= 1 // num = 0
var num = 2
value *= 5 // num = 10
var num = 10
num /= 2 // num = 5
var num = 5
num %= 2 // num = 2
num += 1과 같은 형태를 가지며 이는 num = num + 1과 동일하다.
나머지 연산자들도 이와 같은 방식으로 적용된다.
4) 비교 연산자
let x = 12
let y = 34
print(x == y) // false
print(x != y) // true
print(x > y) // false
print(x >= y) // false
print(x < y) // true
print(x <= y) // true
크다(>), 크거나 같다(>=), 작다(<), 작거나 같다(<=), 같다(==), 같지 않다(!=) 가 있으며, 주어진 두 값을 비교하여 결과적으로는 true 또는 false를 반환한다.
5) 논리 연산자
print(!true) // false
print(!false) // true
print(true && true) // true
print(true && false) // false
print(false && true) // false
print(false && false) // false
print(true || true) // true
print(true || false) // true
print(false || true) // true
print(false || false) // false
print(true && false || false) // false
print(true || false && true) // true
true와 false를 대상으로 하며, true나 false 앞에 !가 붙어있으면 논리값이 반대로 된다.
&&는 AND 논리 연산을 수행하며, 두 값이 모두 true여야 true를 반환한다. (하나라도 true가 아니라면 false가 반환한다.)
||는 OR 논리 연산을 수행하며, 두 값 중 하나라도 true이면 true를 반환한다.
코멘트
드디어 오늘부터 Swift 문법을 제대로 공부하기 시작했다.
위와 같이 글로 요약 정리해보니까 다시 한번 공부한 내용을 떠올리게 되어 복습 효과가 큰 것 같다. 😄
다만 오늘은 진도를 많이 나가지 못해서 앞으로 공부 시간을 점차 늘려나가야겠다.
내일도 화이팅! 👊🏻
728x90
댓글