[Swift3] 데이터형

2016-06-24
27 Views

Swift 3에서 취급하는 데이터는 다양하며 기존과 크지 다르지 않다. 형(Type)은 데이터 종류와 특성을 규정하고 있는 규칙과 같은 것이다. Swift형은 C언어를 기본으로 데이터형을 기반으로 발전하였으며 최근 3.0버전까지 올라오면서 살짝 변화가 있지만 우선 기본적인 데이터형은 정수/실수/문자열 3가지로 나눌 수 있고 Swift언어에서 정의된 형도 존재한다. 가장 많이 사용되는 형 종류를 정리해보면 다음과 같다.

정수형

  • Int16 (부호가 있는 16비트 정수, -32768 ~ 32767)
  • UInt16 (부호가 없는 16비트 정수, 0 ~ 65535)
  • Int32 (부호가 있는 32비트 정수, -2147483648 ~ 2147483647)
  • UInt32 (부호가 없는 32비트 정수, 0 ~ 4294967295)
  • Int64 (부호가 있는 64비트 정수, -9223372036854775808 ~ 9223372036854775807)
  • UInt64 (부호가 없는 64비트 정수, 0 ~ 18446744073709551615)

정수를 사용할 경우 값의 범위를 고려해서 형을 선택해야 한다.

실수형 (부동소수점)

  • Float (32비트 실수, 유효숫자 7자리)
  • Double (64비트 실수, 유효숫자 15자리)

소수를 사용할 경우, 자릿수에 따라 형을 선택해야 한다.

문자형

  • Character (8비트 값)
  • String (8비트 부호가 없는 값)

문자를 나타낼 때 사용하지만, 실제 iOS/macOS/tvOS 앱 개발에서는 문자열을 다루는 클래스나 구조체를 이용하는 문자열 자체를 취급하는 것은 없다. 문자열 변수는 선언할 때 큰 따옴표로 두르면 String형 변수가 되고 큰 따옴표로 묶인 문자열에 다음 특수문자를 포함할 수 있다.

특수문자

  • \0 (null문자)
  • \\ (백슬래시)
  • \t (탭)
  • \n (개행코드 LF)
  • \r (캐리지 리턴 CR)
  • \” (큰 따옴표)
  • \’ (작은 따옴표)

Bool형

Swift 진위값을 나타내는 형으로 C언어에서는 논리값을 int의 0과 1로 하고 있지만, Swift는 별도로 준비되어 있는 true와 false값으로 처리한다.

AnyObject형

객체를 나타내는 형으로 동일한 컬렉션에 여러가지 형을 저장하거나 UI요소의 액션 인수변수 형이 예상할 수 없는 경우에 이용한다.

빈 상태

변수 값이 없는 경우 객체가 비어 있는지를 나타내는 상수 nil을 대입한다.

복합형

복합형은 자신의 특정형을 가지지 않고 여러 가지 형의 조합으로 이루어진 형을 말한다. 복합형에는 다음과 같은 종류가 있는데 차후에 좀더 자세히 다룰 것이다.

튜플형 : 여러가지 값을 1개로 정리해서 취급하는 데이터구조

함수형: 함수 리턴값으로 여러 가지 형의 값을 돌려주는 형

실제 앱 개발에서는 가끔씩 위 기본형들보다 Swift에서 정의된 클래스를 이용한다. 그런 클래스에 대해서는 차후 다시 설명할 것이다.

[환경기준]

  • macOS Sierra 10.12
  • Xcode 8 (8S128d)
  • Swift 3.0 (swiftlang-800.0.30)
Facebook Comments

You may be interested

[Swift3] 폐쇄(Closure)에 대해 살짝 이해할 수 있는 팁
Swift 3.0
shares10 views
Swift 3.0
shares10 views

[Swift3] 폐쇄(Closure)에 대해 살짝 이해할 수 있는 팁

MJ Kim - 4월 29, 2017

몇몇 개발자를 만나 개발을 하다보면, 폐쇄(Closure)에 대해 이해를 하지 못해서 간단하게 바로 이해할 수 있는 팁을 정리해본다. 앱을 개발하다보면 https통신을…

[Swift3] UITextview의 keyboard 닫기
Swift 3.0
shares2 views
Swift 3.0
shares2 views

[Swift3] UITextview의 keyboard 닫기

MJ Kim - 4월 29, 2017

스토리보드에서 델리게이트를 선언하고 class에 UITextViewDelegate를 상속받아서 delegate=self를 viewDidLoad에서 설정하면 간단하게 해결되는데 가끔 헷깔려 하는 경우가 있어 적어본다. [crayon-590493dc02136036315283/] [crayon-590493dc0213f464302975/] [crayon-590493dc02144362342460/]…

스토리보드에서 다국어 지원 및 Xcode 8.3이상에서 이슈
Swift 3.0
shares5 views
Swift 3.0
shares5 views

스토리보드에서 다국어 지원 및 Xcode 8.3이상에서 이슈

MJ Kim - 4월 29, 2017

다국어 지원은 우선 Localizable.strings파일을 생성한 다음 언어를 지정한다. 그리고 필자가 자주 사용하는 일부 컨트롤들에 대한 확장(extension)을 추가한 다음 스토리보드에서 사용하는…