개발이 취미인 사람

[Swift] 자료형, 변수, 상수 개념 및 사용법 본문

언어(Programming Language)/Swift

[Swift] 자료형, 변수, 상수 개념 및 사용법

RyanSin 2021. 5. 30. 13:59
반응형

- 지난 시간

안녕하세요. 지난 시간에는 Xcode를 설치하는 방법에 대해 알아봤습니다.

 

Xcode 설치 방법에 대해 모르시는 분들은 아래 링크를 통해 설치하고 오시는 걸 추천드리겠습니다.

 

[언어(Programming Language)/Swift] - [Mac] Xcode 설치 (앱 스토어 다운로드 실패 해결)

 

[Mac] Xcode 설치 (앱 스토어 다운로드 실패 해결)

- 개요 안녕하세요. 이번 시간에는 맥북에서 Xcode 설치 방법에 대해 알아보겠습니다. - 설치 보통 앱 스토어(App Store)를 통해 Xcode를 설치를 진행하면, 3~4시간 동아 다운로드 받고 "다운로드 실패"

any-ting.tistory.com

- 개요

이번 시간에는 기본 문법인 자료형, 변수, 상수에 대해 알아보겠습니다.

 

기본적으로 개발을 공부하신 분들은 위 개념을 이해 하시겠지만, 처음 개발을 접하시는 분들이 있기 때문에 살짝 설명 하겠습니다.

 

* 자료형

자료형이란 무엇일까요? 자료(데이터), 형(형태)라고 설명할 수 있습니다. "즉 데이터의 형태" 라고 생각하시면 됩니다.

Swift 라는 언어는 엄격한 언어입니다. 따라서 서로 다른 데이터 타입 간의 데이터 교환이나 공유는 형변환을 통해 이루워집니다.

 

- Bool 형태

true와 false로(참 or 거짓) 이루워진 자료형

var isShowNext:Bool = false

isShowNext = true
isShowNext = "true" // 컴파일 오류 "true" <- 문자열 자료형

위 자료형은 true와 false만을 사용할 수 있습니다. (참 or 거짓)

 

- Int & UInt

Int : 양수와 음수 정수 타입(64비트 정수형 자료형)

UInt : 양수 정수 타입(64비트 양의 정수형 자료형)

var setInt: Int = 10

setInt = 10.1 // 컴파일 오류 10.1 <- Double 타입

var setUInt: UInt = 100

setUInt = -100 // 컴파일 오류 양의 정수만 가능

- Float, Double

Float : 실수 타입(32비트 부동소수형 자료형)

Double : 실수 타입(64비트 부동소수형 자료형)

var setFloat: Float = 3.14
setFloat = 3

var setDouble = 3.14
setDouble = 3

setFloat = setDouble // 컴파일 오류

- Character, String

Character : 문자 타입, 유니코드 사용(쌍따옴표 "" 사용)

String : 문자열 타입, 유니코드 사용(쌍따옴표 "" 사용)

var setCharacter: Character = "가"

setCharacter = "안녕하세요." // 컴파일 오류

var setString: String = "안녕하세요."

setString = setString + "개발이 취미인 사람입니다."
setCharacter = setString // 컴파일 오류 

- Any, AnyObject, nil

Any : Swift의 모든 타입을 수용하는 키워드

var setAny: Any = 10

setAny = "문자열도 할당할 수 있어요."
setAny = 123.45 // Double 타입도 할당할 수 있어요.

var setDouble = 1.0

setDouble = setAny // 컴파일 오류

마지막에 setAny에 값에 Double 타입의 값을 넣었어도 타입이 Any 이기 때문에 명시적 형변환이 필요합니다.

 

AnyObject : Swift의 모든 클래스 타입을 수용하는 프로토콜

class Person {

}

var person: AnyObject = Person()

person = "개발이 취미인 사람" // 컴파일 에러

AnyObject는 클래스의 인스턴스만 수용 가능합니다.

 

nil : Swift의 '없음'을 의미하는 키워드

var setName: Any = "개발이 취미인 사람"

setName = nil //컴파일 에러...

 

* 변수 or 상수

변수란? 변수는 "변할 수 있는 수"라고 생각하시면 됩니다.
상수란? 상수는 변수와 반대로 "변할 수 없는 수"라고 생각하시면 됩니다.

프로그램을 만들 때는 고정적인 값과 상황에 따라 변화되는 값이 있죠. 변수와 상수는 상황에 맞게 잘 사용하면 됩니다. :)

 

//변수 선언 var 키워드 사용
// Ex: var 변수명: 변수타입 = 초기값
var name:String = ""

//상수 선언 let 키워드 사용
// Ex: let 상수명: 상수타입 = 초기값
let age: Int = 15

 

- 타입추론

Swift 언어는 타입추론을 지원합니다. 타입 추론이라는 우리가 타입을 지정하지 않아도 기본적으로 값을 통해 해당 변수나 상수 값을 추론합니다. (자료형을 생략해도 괜찮아요!!)

 

var naem = "개발이 취미인 사람" //String 자료형으로 타입 추론

class Person = {

}

class person = Person() // Person 클래스로 타입추론

위와 같이 타입을 지정하지 않고 사용 할 수 있습니다.

 

이번 시간에는 Swift 기본 자료형, 변수, 상수에 대해 알아봤습니다.

 

감사합니다. :)