var = 일반 변수
let = 상수
변수를 선언할 때는 var, 상수를 선언할 때는 let을 쓴다.
둘 다 JS에서 사용하는 키워드라 좋다.
하지만 JS에서는 상수는 const를 사용하기 때문에 주의!
Int(정수), Double(실수), String(문자열), Bool(true,false)
크게 다르지 않지만 타입이 대문자로 시작한다.
// exam
// var or let 변수명: 데이터타입 = 데이터
var num: Int = 10
let char: String = "Hello, World"
var arr: [String] = ["H", "E", "L", "L", "O"]
또한 배열 선언 시 JS에서는 var arr: string[] = [...]; 인데 Swift에서는 중괄호 안에 타입을 넣어준다.
JS에도 존재하는 중복되지 않는 배열 Set과 키벨류쌍 데이터 Dictionary가 있다.
// Set
var setVar: Set<String> = ["A", "B", "C"]
// Set에 요소를 추가하는 메서드
// Set에 이미 존재하는 요소를 넣을 경우 맨 뒤로 인덱스가 밀린다.
setVar.insert("A") => ["B", "C", "A"]
// Set 배열 안에 특정 요소가 있는지 확인
setVar.contains("A") => true/false
딕셔너리는 JS에서 object라고 생각하면 이해가 쉽다.
순서가 없고 키벨류 쌍 데이터 컬렉션이며 각 키값이 고유해야한다.
// Dictionary
var dicVar: [String:String] = ["name": "Jung Kyusang", "age": "27", "gender": "male"]
// 값 추가
// JS와 거의 동일
dicVar["phoneNumber"] = "010-0000-0000"
// 값 수정
dicVar["gender"] = "female"
// 값 접근
let phoneNumber = dicVar["phoneNumber"]
print("휴대폰번호 : \(phoneNumber)")
// Dictionary 반복
for (key, value) in dicVar {
print("\(key) : \(value)")
// name : Jung Kyusnag
// age : 27
// gender : female
// phoneNumber: 010-0000-0000
}