-
[Swift] 변수 상수 선언Swift 2021. 9. 12. 18:56
이번달 Udacity가 할인을 하길래 충동적으로 Swift 강의를 구입했다.
한동안 자바스크립트만 쓰다가 최근에 알고리즘 공부때문에 파이썬도 시작했는데.. 갑자기 등장한 Swift의 난해함과 싸우고(?) 있다.
한번 공부하고 다른 언어 사용하다 돌아오면 다 까먹어서 정리를 해두며 공부를 해야할 것 같다.
Swift 기본 자료형
- Int
- Float : 실수. 32bit
- Double : 실수. 64bit
- Bool : true / false (은근 언어마다 대소문자 달라서 헷갈림)
- Character : single letter. ('a' 대신 "a" 를 사용함)
- String
변수와 상수
Swift에서 변수는 var, 상수는 let 으로 선언한다
(왜 하필..).var age = 29 let name = "이로그"
위와 같이 타입을 따로 명시 안하고 선언할 경우, Swift는 타입을 추론해서 자료형을 정한다.
만약 추후 같은 변수에 다른 타입을 넣으려고 할 경우 에러가 발생한다. 변수 선언 이후 값을 바꿀 순 있어도 타입을 바꿀 순 없다.
변수, 상수 선언 시 아래와 같이 타입을 직접 적어주는 것도 가능하다(Type Annotation).
var age: Int = 29 var name: String = "이로그" let isWriting: Bool = true let pi:Double = 3.141592
따로 선언해주기보단 타입 추론을 많이 사용한다고 자료에 써있었지만 아직 실전에 못들어가봐서 맞는말인진 모르겠다.
한줄에 콤마로 나눠서 선언하는것도 가능한데, 이 경우 타입을 명시해주거나 값을 넣어 초기화를 바로 해주어야 한다.
// 가능한 코드 let a = 10, b = 20, c = 30 let e, f, g:Int // 불가능한 코드 // let a, b, c // let e, f, g = 10
네이밍
변수/상수명은 모든 대소문자 사용이 가능하고, 심지어 이모지 사용도 가능하다(충격받은 부분)
숫자나 일부 특수문자로 시작하는 이름은 불가능하지만 언더바는 사용 가능하다.
이스케이프 문자
String 리터럴에 흔히 사용하는 \ 을 Swift에서도 사용할 수 있다
- \n : 줄바꾸기
- \t : 탭
- \": 쌍따옴표
- \' : 작은따옴표
\(변수명) 을 통해 변수값을 바로 넣어주는 것도 가능하다 -> 이런걸 String interpolation(문자열 보간)라고 부른다
자바스크립트의 ${ 변수명} 이랑 같은 역할인데 쓰긴 좀 더 간편한 느낌
var month = 9 var date = 12 var day = "일요일" let today = "오늘은 \(month)월 \(date)일 \(day)입니다" print(today) // 오늘은 9월 12일 일요일입니다
아래는 이모지로도 되나 재미로 한번 더 돌려봤다
'Swift' 카테고리의 다른 글
[Swift] 조건문/반복문 기초 (if, switch/for, while) (0) 2021.09.12