// 상수 : 변경되지 않는 값을 저장 == let
let name = "lee"
// 변수 : 변경되는 값을 저장 == var
var name = "kim"
// 변수에 타입을 지정했을 경우 그 타입외의 값을 넣으면 오류가 발생한다.
var number: Int
// o
number = 5
// x
number = "kim"
//Swift 연산자
var x = 1 + 2
//복합 할당 연산자
var num = 10
num = num + 5
print(num)
//15 출력
//비교 연산자
let a = 10
let b = 20
let isEqual = a!=b
print(isEqual)
// a와b 의 값이 다르므로 false 출력
//논리 연산자
let isRating = true
let isCold = false
if isRating && isCold{
print("둘 다 true")
}else if isRating || isCold{
print("True")
}
// 두 변수를 비교했을때 서로 다르므로 false출력
//범위 연산자
//닫힘 범위 연산자
let range = 1...5
for number in range{
print(number)
}
//1,2,3,4,5
// 반 개방 범위 연산자
let range2 = 1..<5
for number in range2{
print(number)
}
// 1..<5 1이상 5미만
//1,2,3,4
//단 방향 범위 연산자
let index = [1,2,3,4,5,6,7]
let fromIndex = index[3...]
for number in fromIndex{
print(number)
}
//[3...]은 [3]부터 시작해서 [3]에 위치한 값 4부터 4,5,6,7이 출력된다
//삼항 연산자
let age = 25
let flowAge = age <= 19 ? "true" : "false"
print(flowAge)
//age가 25의 값을 가지고 있기 때문에 age가 19이하라는 조건을 부합하지 않기 때문에 오른쪽 값인 false가 출력됨
//nil 병합 연산자
//nil == 값이 없다
var name: String? = nil
//String? 값이 있을수도 있고 없을수도 있다는 것을 의미 =nil이므로 현재 값이 없다는걸 의미한다
let username: String = name ?? "guest"
//name에 값이 있다면 그 값이 출력되지만 현재 nil로 값이 없기 때문에 기본값으로 지정해논 "guest"가 출력된다
print(username)
//nil은 기본값을 제공하는 상황이 필요로 할 때 유용하게 사용할 수 있다
함수