본문 바로가기

프로그래밍/Swift

[Swift 3] 데이터 타입과 연산자

반응형



변수와 상수


 

변수 

- var로 선언

 - 타입 선언 생략 가능(값에 따라 타입 추론)


var i =1   // 타입을 int로 추론

var f : Float = 1.1 // 변수 f를 Float으로 선언하고 값은 1.1 로 지정




변수 선언과 초기값

 - 변수 선언과 초기값 대입은 분리가 가능하지만,

 - 분리 시 타입 선언은 생략할수 없다.


var intVal : Int

intVal = 10 // intVal을 int로 선언후, 초기값을 10으로 지정.



타입 에러


var var1 = 10

var1 = 3.14   => 초기값 10으로 인해 타입이 Int로 추론되어 에러 발생

 Cannot assign a value of type 'Double' to a value of type 'Int'




타입 대입 에러


var intVal = 1

var floatVal = 1.2

var ret = intVal + floatVal  // int, float 타입간 대입, 연산이 불가하여 에러

Binary operator '+' cannot be applied to operands of type 'Int' and 'Double'





상수 

 - let으로 선언


변수 / 상수 사용전 초기화

 - 자동 초기화가 불가하며, 초기화전에 사용할수 없다.


var i : Int

i + 10     // 초기화 전에 사용할수 없으므로 에러






연산자 


 - 기본적인 사칙연산과 단항연산자 (+, -, *, / , %) 사용 가능

 - 증감 연산자 사용불가 (++, --) [Swift 3 삭제]

 - +=, -= 연산자 사용 가능, 그외에 *=, %= 연산자 사용 가능


var i  = 10

i %= 2 // i는 0이 된다. 



비교 , 3항 연산자


 - 다른 언어와 차이 없이 사용 가능 

  비교 연산자 : ==, !=, > , < , >= , <= , ===

  3항 연산자 : ? (true expression) : (false expression)




범위 연산자

 닫힌 범위 (Closed)

 1...10 => 1에서 10까지를 말한다 (10을 포함한)


반 닫힌 범위(Half Closed)

1..<10 => 1에서 9까지를 말한다(10은 제외)



논리 연산자

 - !, || , &&




기본 데이터 타입 (정수, 실수형)


데이터 타입

불리언 : Bool

정수 : Int, Uint 

실수 : Float , Double

문자, 문자열  : Character, String



불리언(Bool)

값 : true, false

var boolVal : Bool = false



정수(Int, UInt)


크기에 따른 정수형 타입

Int8, Int16, Int32, Int64, UInt => 비트에 따라 정수형 타입의 범위 지정


Int8 : -128 ~ 127

UInt : 0 ~ 255


값의 범위 : max, min

 - Int.max, Int.min




타입 변환

Double(floatVal) + DoubleVal // float타입의 floatVal을 Double로 형변환후 DoubleVal과 연산




실수(Float, Double)

 - 기본 타입은 Double


var doubleVar = 3.14 // 기본 타입인 Double

var floatVal: Float = 36.5 // Float으로 타입을 지정하여야 한다. (지정하지 않으면 기본인 Double로)


반응형

'프로그래밍 > Swift' 카테고리의 다른 글

[Swift 3] 문자와 문자열  (0) 2017.03.15
[Swift 3] 개발 환경 및 Hello, World!  (0) 2017.03.14