변수
- 메모리에 데이터가 저장되는 공간
var a = 2 var name = "joy" var a = 1, b = 2, c = 3
- 변수 명명 규칙
- 소문자로 시작
- 숫자로 시작 불가능
- 카멜케이스 사용
- 소문자로 시작
- 변수 출력 - 문자열 보간법 (String Interpolation)
print("저는 \(name) 입니다!")
- 상수
- 저장된 데이터를 변경할 수 없는 변수
데이터 타입
- 종류
- Int : 정수
- Float : 실수 6자리
- 4바이트(32bit) 공간 사용
- Double : 실수 15자리
- 8바이트(64bit) 공간 사용
- Character : 문자(글자 한개)
- String : 문자열
- Bool : 참과 거짓
- UInt, UInt64, UInt32, UInt16, UInt8
- 타입을 확인하는 방법
type(of: a)
- 타입 주석 (Type Annotation) : 변수 선언 시 타입 명시
var number: Int
- 타입 추론 (Type Inference) : 타입을 명시하지 않아도 Swift가 타입을 추론
var name = "Joy" var number = 5.2
- 타입 안정성 (Type Safety)
- Swift에서는 데이터 타입을 명확히 구분하여 사용
- ex) Int와 Double끼리 계산이 불가능함!
- 타입 변환 (Type Conversion)
- 타입 변환 시 Optional 타입을 반환하며, 데이터 유실의 가능성이 있음!
let numberStr = "123" let number = Int(numberStr) // 123 let numberStr2 = "12.2" let number2 = Int(numberStr2) // 12 let numberStr3 = "abc" let number3 = Int(numberStr3) // nil
타입앨리어스
타입에 별칭을 붙여 사용
typealias Name = String typealias SomeFunction = (Int) -> String
튜플(Tuple)
- 연관된 데이터 묶은 타입
- ex) 좌표(Int, Int), 3차원공간(Int, Int, Int)
- 정의 :
let student: (String, Int, String) = ("Joy", 20, "Seoul")
- 접근 :
student.0 // "Joy"
- Named Tuple
- 가독성을 높히기 위해 데이터에 이름을 매김
- 정의 :
let student = (name: "Joy", age: 20, address: "Seoul")
- 접근 :
student.name // "Joy"
- 튜플 분해
- 각 요소를 바인딩 가능
let (studentName, studentAge, studentAddress) = student
- 튜플 typealias
typealias StudentInfo = (name: String, age: Int, address: String)
- 활용
- switch문 활용
let coordinate = (20, 0) switch coordinate { case (let x, 0): // x축에 있음 case (let 0, y): // y축에 있음 default: // 축 위에 있지 않음 }
- switch문 활용
let coordinate = (1, -1)
switch coordinate {
case let (x, y) where x == y:
// 기울기가 1인 1차함수 그래프 위에 있다
case let (x, y) where x == -y:
// 기울기가 -1인 1차함수 그래프 위에 있다
default:
// 나머지..
}
Swift 용어 정리
- 키워드
- 약속어
- ex) var, let, if, false ..
- 리터럴(Literals)
- 코드에서 고정된 값으로 표현되는 데이터 그 자체
- ex) 43(Int), "Joy"(String), 1412.12(Double), true(Bool) 등
- 식별자
- 변수, 상수, 함수 등의 이름
- 토큰
- 코드의 가장 작은 단위
- ex) 식별자, 키워드, 구두점, 연산자, 리터럴
- 표현식
- 값, 변수, 연산자의 조합으로 하나의 결과값이 나오는 코드 단위
- ex) `5>10 // false`
- 문장
- 특정 작업을 실행하는 코드 단위
- ex) `var num = 3` `print(num`
'iOS > Swift' 카테고리의 다른 글
[Swift] 반복문 (0) | 2022.07.04 |
---|---|
[Swift] 조건문 (0) | 2022.07.04 |
[Swift] 연산자 (0) | 2022.07.04 |