English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
이 튜토리얼에서는 Swift 프로그래밍 언어가 지원하는 다양한 데이터 타입을 알아보고, 변수나 상수를 생성할 때 사용할 것입니다.
데이터 타입은 변수나 상수가 저장할 수 있는 데이터(값)의 타입입니다. 예를 들어, 기사Swift 변수와 상수,문자 데이터를 메모리에 저장하기 위해 변수와 상수를 생성했습니다。
이 데이터는 텍스트일 수 있습니다/문자열(“ Hello”) 또는 숫자(12.45) 또는 비트(0&1)。데이터 타입을 정의함으로써 정의된 데이터 타입만 저장할 수 있습니다。
이제 한 장면을 보겠습니다:
게임을 만들려고 생각하세요. 대부분의 게임은 게임이 끝나면 고분과 플레이어 이름을 표시하므로, 이 두 데이터를 저장해야 합니다.
고분(highScore)은 숫자(예: 59),플레이어의 이름(playerName)은 문자열(예: Jack)입니다. 데이터를 저장하기 위해 두 개의 변수나 상수를 생성할 수 있습니다.
Swift에서는 변수와 데이터 타입을 다음과 같이 선언하여 할 수 있습니다:
var highScore:Int = 59 var playerName:String = "Jack"
여기서는 Int 타입의 HighScore 변수를 선언하여 값을 저장합니다.59문자열 타입의 playerName 변수에 값을 저장합니다.
하지만, 다음과 같은 작업을 수행하면:
var highScore:Int = "Jack"
컴파일 시 오류가 발생하며, 예외가 발생합니다. String 타입의 값을 지정된 Int 타입으로 변환할 수 없습니다.。
이는 highScore를 정수 값을 저장하기 위해 선언했지만, 문자열을 저장한 것입니다. 이 오류는 highScore가 하나의 숫자만 저장할 수 있도록 보장합니다.
데이터 타입의 또 다른 중요한 부분은 크기입니다. 이는 주어진 변수나 상수에 저장할 수 있는 데이터 크기를 지정합니다.
Type의 크기는 비트 단위로 측정되며, 최대로 저장할 수 있습니다. 2비트로 생각할 수 있습니다.Bit을 이해한다면, 0 또는1의 값을 저장합니다.
따라서,Type size = 1 비트를 저장할 수 있습니다. 2 1 = 2두 가지 값: 0 또는 1따라서, 알파벳 프로그램의1비트 시스템에서는 0을 a로 해석할 수 있습니다./0을 b로 해석하면1b로 해석됩니다/1.0로 표현됩니다.
0 -> a 또는 0 1 -> b 또는 1
또한, 두 자리 시스템에서는 최대로 저장할 수 있습니다.2 2 = 4개의 값:(00,01,10,11) 각 조합은 다음과 같이 표현될 수 있습니다:
00 -> a 또는 0 01 -> b 또는 1 11 -> c 또는 2 10 -> d 또는 3
비트 시스템에서는 최대로 저장할 수 있습니다.2 n개값
아래는 Swift에서 가장 많이 사용되는 데이터 타입을 나열했습니다:
Bool 타입으로 선언된 변수/상수는 두 가지 값만 저장할 수 있습니다. true 또는 false.
기본 값:false
if 처리-else 문에서 자주 사용됩니다. 문서를 참조하세요. Swift if else。
let result:Bool = true print(result)
이 프로그램을 실행할 때, 출력은 다음과 같습니다:
true
정수 타입으로 선언된 변수/정수 상수는 양수와 음수, 0을 포함한 소수점 부분이 없는 값을 저장할 수 있습니다.
기본 값0
크기:32/64플랫폼 유형에 따라 정수)
범위:-2,147,483,648 부터 2,147,483,647(32플랫폼에 따라)
-9223372036854775808 부터 9223372036854775807(64플랫폼에 따라)
Integer 타입의 변형이 많습니다. 예를 들어, UInt, Int와 같습니다.8,Int16중에서 가장 일반적으로 사용되는 것은 Int입니다.
변수를 지정하려면/상수가 포함할 수 있는 정수의 크기/유형, UInt, Int을 사용할 수 있습니다8、Int16더 구체적으로 저장하는 것에 대해 다음에 설명하겠습니다.
var highScore:Int = 100 print(highScore) highScore = -100 print(highScore)
이 프로그램을 실행할 때, 출력은 다음과 같습니다:
100 -100
위의 예제에서는 Int 타입의 변수 highScore를 선언했습니다. 먼저, 그를100을 사용하여 값을 변경합니다, 따라서 print (highScore)를 스크린에 출력100.
그 후, 우리는 대입 연산자 highScore =-100 값을 변경합니다 -100, 따라서 스크린에 (highScore) 출력-100.
SWIFT에서 Int 유형의 몇 가지 변형을 살펴보겠습니다.
양수와 부정수를 저장할 수 있는 정수 유형의 변형.
기본 값0
크기:8비트를 저장할 수 있습니다.
범위:-128 부터 127
개의 Int8정수는 총2 8 =(256)개의 값. 즉, 0부터 255사이의 숫자를 저장할 수 있습니다.
하지만 Int8 양수와 부정수를 포함하여 저장할 수 있습니다. 따라서-128까지127의 숫자, 0 포함하여 총256개의 값이나 숫자.
var highScore:Int8 = -128//정확 highScore = 127 //정확 highScore = 128 //오류 highScore = -129 //오류
또한 사용할 수 있습니다 Swift 함수 Swift 함수의 내장된 .min과 .max를 사용하여 타입이 저장할 수 있는 최대와 최소 값을 찾을 수 있습니다.
예제3최대와 최소 Int8데이터 유형
print(Int8.min) print(Int8.max)
이 프로그램을 실행할 때, 출력은 다음과 같습니다:
-128 127
정수 유형의 변형인 UInt(불가능한 정수)는 무기한 숫자(양수 또는 0)만 저장할 수 있습니다.
기본 값0
크기:32/64플랫폼 유형에 따라 정수)
범위0부터 4294967295(32플랫폼에 따라)
0부터 18446744073709551615(64플랫폼에 따라)
예제4UInt 데이터 유형
var highScore:UInt = 100 highScore = -100 //이와 같은 작업을 시도할 때 컴파일 시 오류가 발생합니다
위의 코드는 컴파일 시 오류를 발생시킵니다. 불가능한 정수는 0 또는 긍정적인 숫자만 저장할 수 있습니다. 부정적인 숫자를 불가능한 정수에 저장하려고 하면 오류가 발생합니다.
소수점 유형으로 선언된 변수나 상수는 소수점이나 소수점이 있는 숫자를 저장할 수 있습니다.
기본 값0.0
크기:32정수로 표현된 소수점 숫자입니다.
범위:1.2 * 10 -38부터3.4 * 10 38(〜6정수)
let highScore:Float = 100.232 print(highScore)
이 프로그램을 실행할 때, 출력은 다음과 같습니다:
100.232
Double형으로 선언된 변수/정수로 표현된 소수점 숫자도 소수점이나 소수점이 Float보다 큰 숫자를 저장할 수 있습니다.
기본 값0.0
크기:64정수로 표현된 소수점 숫자입니다.(따라서 Double형 변수는 소수점이나 소수점이 Float보다 큰 숫자를 저장할 수 있습니다.)
범위:2.3×10 -308〜1.7 * 10 308(〜15비트)
let highScore:Double = 100.232321212121 print(highScore)
이 프로그램을 실행할 때, 출력은 다음과 같습니다:
100.232321212121
Character 타입으로 선언된 변수/상수는 단일 문자 문자열 리터럴을 저장할 수 있습니다.
Swift에서는 \u{n}(Unicode 문자,n은 십육진수로 표시)를 사용하여 emoji나 영어 이외의 언어를 문자로 사용할 수 있습니다.
let playerName:Character = "J" let playerNameWithUnicode:Character = "\u{134"} print(playerName) print(playerNameWithUnicode)
이 프로그램을 실행할 때, 출력은 다음과 같습니다:
J Ĵ
String 타입으로 선언된 변수나 상수는 문자 집합을 저장할 수 있습니다.
기본 값:“”(빈 문자열)
그것은 값 타입입니다。
for를 사용할 수 있습니다-반복문을 통해 문자열을 순회합니다。참조Swift for-반복문 내에서。
Swift는 문자열에서 특수 문자열을 사용하기 위해 특수 문자열을 지원합니다. 예를 들어
\0 (빈 문자),
\\\ (일반 반취소 기호\),
\t (탭 기호),
\v (垂直 태그),
\r (리턴 기호),
\" (중간 기호),
\' (단락 기호),와
\u{n} (Unicode 문자열,n은 십육진수로 표시)。
let playerName = "Jack" let playerNameWithQuotes = "\"Jack\"" let playerNameWithUnicode = "\u{134}ack" print(playerName) print(playerNameWithQuotes) print(playerNameWithUnicode)
이 프로그램을 실행할 때, 출력은 다음과 같습니다:
Jack "Jack" Ĵack
참조Swift 문자와 문자열문자와 문자열의 선언, 연산 및 예제에 대한更多信息을 배울 수 있습니다.
이 데이터 타입 외에도 Swift에는 다른 고급 데이터 타입이 있습니다. 예를 들어 tuple,optional,range,class,structure 다음 장에서 배울 것입니다.
1Swift는 타입 추론 언어이므로, 변수나 상수는 저장된 값에서 자동으로 타입을 추론할 수 있습니다. 따라서 변수나 상수를 생성할 때 타입을 건너뛰실 수 있습니다. 그러나 읽기 쉽기 위해 타입을 작성하는 것을 고려할 수 있지만, 이를 권장하지 않습니다.
예제9:타입 추론의 변수/상수
let playerName = "Jack" print(playerName)
Swift 컴파일러는 값에 따라 자동으로 변수의 타입을 추론할 수 있습니다.
2. Swift는 타입 안전한 언어입니다. 변수를 특정 타입으로 정의하면 이후에 다른 데이터 타입으로 변경할 수 없습니다.
예제10:Swift는 타입 안전한 언어입니다
let playerName:String playerName = 55 //컴파일 시간 오류
위의 코드는 오류를 생성합니다.因为我们已经指定变量playerName将为String。 因此我们无法在其中存储一个整数。