데이터 타입(data type, 자료형)
- 자료형의 종류에는 Bool, Character, Int, Float, Double, String, Void형이 있음
- 변수 생성 시 var, 상수 생성 시 let 사용
- Swift 프로그램에서 숫자를 저장할 때
- var myNum = 5 -> myNum이라는 이름의 변수를 생성한 후 숫자 5를 할당함
- var myNum : Int = 5 -> 초깃값이 존재하면 컴파일러가 타입 추론(type inference)를 하기 때문에 데이터 타입을 명시하지 않아도 됨
- 보통 초깃값을 주지 않을 경우에만 자료형을 씀
- var x : Int, x= 10 // error -> '=' 양쪽에 일관된 공백이 있어야 함
var x = 20 // x가 Int형으로 타입 추론됨 print(x) // 20 var x : Int = 20 print(x) // 20 var x : Int x = 20 print(x) // 20
세 가지 경우 모두 가능함
- 자료형의 종류가 궁금할 때 : type(of:n)
- 자료형의 크기가 궁금할 때 : MemoryLayout.size(ofValue: n), MemoryLayout<자료형>.size
var x = 5 print(type(of:x)) // Int let s = MemoryLayout.size(ofValue: x) // print(MemoryLayout.size(ofValue: x)) let t = MemoryLayout<String>.size // print(MemoryLayout<String>.size) print(s, t) // 8 16
1. 정수 데이터 타입 : Int
- 정수(소수점이 없는 수)를 저장하는 데 사용
- 8비트, 16비트, 32비트, 64비트 정수를 지원함
- 애플은 특정 크기의 데이터 타입보다 Int 데이터 타입을 권장함
2. 부동 소수점 데이터 타입 : Double
- 소수점이 있는 숫자
- Float와 Double 타입을 제공함
- Double 타입 : 64비트로 부동 소수점 수를 저장, 수소점 15자리 정확도
- Float 타입 : 32비트로 부동 소수점 수를 저장, 소수점 6자리 정확도
- Double 형이 기본
var weight : Double = 50.3 // 기본형이 Double이기 때문에 생략 가능
3. 부울 데이터 타입 : Bool
- 참(1) 또는 거짓(0) 조건을 처리하는 데이터 타입
- Boolean 데이터 타입을 처리하기 위해 두 개의 불리언 값 true, false를 사용함
- 초깃값은 true
var tomIsMan : Bool = true // 초깃값 true가 존재하기 때문에 Bool은 생략 가능
4. 문자 데이터 타입 : Character
- 문자, 숫자, 문장 부호, 심볼 같은 유니코드(Unicode) 문자 하나를 저장함
- var 변수명 : Character = "초깃값" -> 초깃값은 큰 따옴표로 선언해야 함
- Character를 생략할 수 없음. 생략 시 String형이 됨
var myChar : Character = "x" print(type(of:myChar)) // Character var myChar2 = "A" // Character 생략 불가. 생략 시 String형이 됨 print(type(of:myChar2)) // String
5. 문자열 데이터 타입 : String
- 단어나 문장을 구성하는 일련의 문자
- 저장, 검색, 비교, 문자열 연결, 수정 등의 기능을 포함
- 문자열 보간(string imterpolation)을 사용하여 문자열과 변수, 상수, 표현식, 함수 호출의 조합으로 만들 수 있음
var myName : String = "Chae" // String은 보통 생략함 var age = 23 var message = "\(myName)의 나이는 \(age)살 이다." print(message) // Chae의 나이는 23살 이다.
print 함수 사용법
- 기본이 개행
for i in 1...6 { print(i) } // 1 2 3 4 5 5
- 사이에 문자를 넣어 출력하기 : separator
print(1, 2, 3, 4, separator: "-") // 1-2-3-4 print(1, 2, 3, 4, separator: "..") // 1..2..3..4
- 개행을 원하지 않을 때 : terminator
for i in 1...6 { print(i, terminator: "") } // 123456 for i in 1...6 { print(i, terminator: " ") } // 1 2 3 4 5 6
정리한 내용은 유튜브 Smile Han님의 Swift 강좌 2-5~2-8을 참조하였습니다.
https://www.youtube.com/watch?v=V_whnW1jqEM&list=PLJqaIeuL7nuFbWKMhG8-xLzF1T7gIPr8Z&index=14
'iOS - Swift 문법' 카테고리의 다른 글
iOS Swift 강좌 : Auto Layout (0) | 2022.01.10 |
---|---|
iOS Swif 강좌 : 옵셔널(optinal) 기초 (0) | 2022.01.10 |
iOS Swift 강좌 : 튜플(Tuple) (0) | 2022.01.04 |
iOS Swift 강좌 : 변수(var)와 상수(let) (0) | 2022.01.04 |