신속한 데이터 유형
우리가 모든 프로그래밍 언어 프로그래밍을 사용하면 다른 정보를 저장하는 다양한 데이터 유형을 사용할 필요가있다.
변수의 데이터 타입은 컴퓨터의 메모리에 어떻게 비트 메모리를이 값을 결정한다. 당신은 변수를 선언 할 때 당신은 또한 데이터 유형을 지정할 수 있습니다.
모든 변수는 데이터가 저장 될 수 있는지 결정하는 데이터 형식을 갖는다.
내장 데이터 유형
스위프트는 여기에 일반적으로 사용되는 여러 데이터 유형, 매우 다양한 데이터 유형을 제공합니다 :
지능
일반적으로, 특히 길이의 정수를 지정 할 필요가 없습니다. 스위프트 특별한 정수형 제공 Int
, 일본어 단어와 같은 현재의 플랫폼 길이의 길이 :
- 32 비트 플랫폼에서
Int
과Int32
같은 길이. - 64 비트 플랫폼에
Int
과Int64
같은 길이.
당신은 일반적인 사용의 특정 길이 정수, 필요하지 않는 Int
충분히. 이 코드의 일관성과 재사용 성을 향상시킬 수 있습니다. 심지어 32 비트 플랫폼에서, Int
저장 될 수있는 정수의 범위는 도달 할 수 -2,147,483,648
~ 2,147,483,647
대부분의 시간이 이미 충분히 크다.
UINT
스위프트 또한 특별한 부호를 입력하세요 UInt
, 일본어 단어와 같은 현재의 플랫폼 길이의 길이 :
- 32 비트 플랫폼에
UInt
및UInt32
같은 길이. - 64 비트 플랫폼에
UInt
및UInt64
같은 길이.
참고 :
사용하지 않는 시도UInt
당신이 정말 현재의 플랫폼과 동일한 길이 부호없는 정수의 원래 단어를 저장하는 데 필요하지 않는 한. 이 외에도, 그것을 이용하는 것이 바람직하다Int
는 공지 된 음이 아닌 값을 저장할 경우에도. 통합 사용Int
, 디지털 다른 유형의 디지털 일치하는 형식 유추 사이의 변환을 방지하기을 참조, 코드 재사용 성을 향상시킬 수있는 보안 및 유형 추론의 유형 .
플로트
플로트는 소수 부분과 숫자 등이다 3.14159
, 0.1
및 -273.15
.
이상 저장할 수있는 정수 형태의 부동 소수점 형식 표시보다 넓게 Int
크거나 작은 종류를 참조. 신속한 제공이 부동 소수점 형식을 체결 :
-
Double
64 비트 부동 소수점을 나타냅니다. 만약 크거나 매우 높은 정밀도 부동 소수점 수를 저장해야하는 경우,이 입력을 사용하여주십시오. -
Float
32 비트 부동 소수점 수를 나타냅니다. 적은 정밀도는, 우리는이 유형을 사용할 수 있습니다.
참고 :
Double
정밀도는 적어도 15 자리가 매우 높다Float
단지 여섯 자리를 일어났다. 코드가 해결해야 입력에 따라 값의 범위를 선택합니다.
부울 값
스위프트는 Bool로라는 기본 부울 (부울) 유형이 있습니다. 그들은 단지 참 또는 거짓이 될 수 있기 때문에 부울 값, 값 논리를 의미한다. 스위프트는 참과 거짓이 부울 상수를 가지고 있습니다.
현
문자열과 같은 문자 시퀀스의 집합입니다 :
"Hello, World!"
문자
문자는 예를 들어, 단일 문자를 말한다 :
"C"
선택 유형
누락 된 값이 될 수있는 경우를 처리하기 위해 옵션 형 (선택적 항목)를 사용합니다. 선택 유형은 값 또는 어떤 값을 나타냅니다.값 범위
다음 테이블은 메모리 변수와 변수 유형의 다른 유형의 최소 및 최대 저장 용량을 보여준다
유형 | 크기 (바이트) | 간격 값 |
---|---|---|
INT8 | 1 바이트 | -127 127 |
UINT8 | 1 바이트 | 0-255 |
INT32 | 4 바이트 | -2147483648로 2147483647 |
UINT32 | 4 바이트 | 0-4294967295 |
INT64 | 8 바이트 | -9223372036854775808로 9223372036854775807 |
UINT64 | 8 바이트 | 0-18446744073709551615 |
플로트 | 4 바이트 | 1.2E-38 3.4E + 38 (~ 6 자리)에 |
더블 | 8 바이트 | 2.3E-308 1.7E + 308 (~ 15 자리)에 |
유형 별칭
현재 유형에 대한 별칭 다른 이름을 정의 입력 typealias 키워드를 사용하여 정의 된 별칭을 입력합니다. 다음 구문은 다음과 같습니다
typealias newname = type
다음 예제는 int 형 별명 다리 정의
typealias Feet = Int
이제, 우리는 변수 별명을 정의 할 수 있습니다 :
import Cocoa typealias Feet = Int var distance: Feet = 100 print(distance)
우리는 놀이터를 위의 프로그램을 사용, 출력은 :
100
유형 보안
스위프트는 보안 (유형 안전) 언어의 유형입니다.
이 코드를 컴파일에서 검사 (유형 검사)의 유형이 될 것이며, 오류로 마크의 유형과 일치하지 않도록 스위프트는 유형 안전하기 때문이다. 이것은 당신이 찾아 시간의 개발에 초기 오류를 수정 할 수 있습니다.
import Cocoa var varA = 42 varA = "This is hello" print(varA)
위의 절차는 엑스 코드에 대해 설명한다 :
error: cannot assign value of type 'String' to type 'Int' varA = "This is hello"
'지능'변수에 할당 할 수 없습니다 의미 '문자열'문자열입니다.
형식 유추
이 값의 다른 유형을 처리해야하는 경우 유형 검사는 실수를 방지 할 수 있습니다. 그러나, 이것은 당신이 상수와 변수를 선언 할 때마다 명시 적으로 유형을 지정해야한다는 것을 의미하지 않는다.
명시 적으로 유형을 지정하지 않으면, 스위프트 적절한 유형을 선택 타입 추론 (형식 유추)를 사용합니다.
새 상수 값 (42)을주고 유형을 표시하지 않는 경우 할당 초기 값은 정수처럼 보이기 때문에 예를 들어, 스위프트, 일정한 유형의 지능을 추론 할 수있다 :
let meaningOfLife = 42 // meaningOfLife 会被推测为 Int 类型
부동 소수점 리터럴의 유형을 표시하지 않는 경우 마찬가지로, 스위프트 당신이 원하는 추론 할 것은 두 번입니다 :
let pi = 3.14159 // pi 会被推测为 Double 类型
때 부동 소수점 형식 유추는, 스위프트는 항상 대신 두 번 플로트의 선택합니다.
정수 및 부동 소수점과 같은 표현하면, 두 번 유형을 추론 할 것이다 :
let anotherPi = 3 + 0.14159 // anotherPi 会被推测为 Double 类型
(3)의 원래 값이 명시 적으로 타입을 선언하지 않고,식이 리터럴 부동 소수점이, 표현은 두 유형으로 추정됩니다.
예
import Cocoa // varA 会被推测为 Int 类型 var varA = 42 print(varA) // varB 会被推测为 Double 类型 var varB = 3.14159 print(varB) // varC 也会被推测为 Double 类型 var varC = 3 + 0.14159 print(varC)
위의 코드의 구현, 출력은 :
42 3.14159 3.14159