इस ट्यूटोरियल में, आप विभिन्न डेटा प्रकारों के बारे में जानेंगे जो स्विफ्ट प्रोग्रामिंग भाषा का समर्थन करती है और एक चर या स्थिर बनाते समय इसका उपयोग करती है।
एक डेटा प्रकार एक प्रकार का डेटा (मान) है जो एक चर या स्थिर इसमें संग्रहीत कर सकता है। उदाहरण के लिए, आलेख स्विफ्ट चर और स्थिरांक में, आपने मेमोरी में स्ट्रिंग डेटा संग्रहीत करने के लिए एक चर और एक स्थिर बनाया।
यह डेटा एक पाठ / स्ट्रिंग ("हैलो") या एक संख्या (12.45) या सिर्फ बिट्स (0 & 1) हो सकता है। डेटा प्रकार को परिभाषित करना केवल परिभाषित प्रकार के डेटा को संग्रहीत करना सुनिश्चित करता है।
आइए एक परिदृश्य देखें:
मान लीजिए आप एक गेम बनाना चाहते हैं। चूंकि, गेम पूरा होने के बाद अधिकांश गेम उच्च स्कोर और खिलाड़ी का नाम प्रदर्शित करते हैं, आपको अपने गेम के लिए इन दो डेटा को संग्रहीत करने की आवश्यकता होती है।
उच्च अंक एक संख्या है (उदाहरण 59) और खिलाड़ी का नाम एक स्ट्रिंग (जैसे जैक)। आप डेटा को संग्रहीत करने के लिए दो चर या स्थिरांक बना सकते हैं।
स्विफ्ट में, यह चर और डेटा प्रकार घोषित करके किया जा सकता है:
var highScore: Int = 59 var खिलाड़ी नाम: स्ट्रिंग = "जैक"
यहाँ, हमने हाईस्कोर वैरिएबल को टाइप करने का ऐलान किया है, Int
जो वैल्यू को स्टोर करता है 59. और, टाइप के प्लेयरनाम वैरिएबल, String
जो जैक को वैल्यू करता है।
हालाँकि, यदि आप ऐसा कुछ करते हैं:
var highScore: Int = "जैक"
आपको एक संकलित समय त्रुटि मिलेगी, जिसमें कहा गया है कि प्रकार 'स्ट्रिंग' के मान को निर्दिष्ट प्रकार 'Int' में परिवर्तित नहीं किया जा सकता है ।
ऐसा इसलिए है क्योंकि आपने पूर्णांक मान संग्रहीत करने के लिए हाईस्कोर घोषित किया है, लेकिन उसमें स्ट्रिंग रखा है। यह त्रुटि सुनिश्चित करती है कि हाईस्कोर केवल एक नंबर स्टोर कर सकता है और खिलाड़ी का नाम नहीं।
एक डेटा प्रकार का आकार
डेटा प्रकार का एक अन्य महत्वपूर्ण हिस्सा इसका आकार है। यह डेटा के आकार को निर्दिष्ट करता है जिसे किसी दिए गए चर या स्थिर में संग्रहीत किया जा सकता है।
एक प्रकार का आकार बिट के संदर्भ में मापा जाता है और 2 बिट तक मूल्यों को संग्रहीत कर सकता है । यदि आप बिट के बारे में नहीं जानते हैं, तो इसे एक मूल्य के रूप में सोचें जो कि 0 या 1 है।
तो, एक के लिए प्रकार आकार = 1 बिट, यह केवल तक, स्टोर कर सकते हैं 2 1 = 2, दो मानों: या तो 0 या 1. तो एक पत्र कार्यक्रम के लिए एक 1 बिट सिस्टम एक / 0 और 1 बी के रूप में के रूप में 0 व्याख्या कर सकते हैं / 1.0।
0 -> a या 0 1 -> b या 1
इसी तरह, एक दो बिट सिस्टम 2 2 = 4 मान तक संग्रहीत कर सकता है : (00,01,10,11) और प्रत्येक संयोजन को निम्न रूप में दर्शाया जा सकता है:
00 -> ए या 0 01 -> बी या 1 11 -> सी या 2 10 -> डी या 3
एक बिट सिस्टम के लिए, यह इसमें अधिकतम 2 n मान स्टोर कर सकता है।
स्विफ्ट डेटा प्रकार
स्विफ्ट में उपयोग किए जाने वाले सबसे आम डेटा प्रकार नीचे सूचीबद्ध हैं:
बूल
- बूल प्रकार के घोषित परिवर्तनीय / लगातार
true
या तो केवल दो मान संग्रहीत कर सकते हैं याfalse
। - डिफ़ॉल्ट मान : असत्य
- जब आप
if-else
कथन के साथ काम करते हैं तो इसका अक्सर उपयोग किया जाता है । इसके बारे में विस्तार से लेख को शामिल किया जाए तो स्विफ्ट करें।
उदाहरण 1: बूलियन डेटा प्रकार
let result:Bool = true print(result)
जब आप प्रोग्राम चलाते हैं, तो आउटपुट होगा:
सच
पूर्ण करनेवाला
- पूर्णांक प्रकार के घोषित चर / निरंतरता शून्य और बिना किसी भिन्न घटकों के साथ सकारात्मक सहित सभी संख्याओं को संग्रहीत कर सकते हैं।
- डिफ़ॉल्ट मान : 0
- आकार : 32/64 बिट प्लेटफॉर्म के प्रकार पर निर्भर करता है।
- रेंज : -2,147,483,648 से 2,147,483,647 (32 बिट प्लेटफॉर्म)
-9223372036854775808 से 9223372036854775807 (64 बिट प्लेटफॉर्म) - पूर्णांक type.eg के कई वेरिएंट हैं
UInt
,Int8
,Int16
आदि सबसे आम आप उपयोग की हैInt
। - आप के पूर्णांक एक चर / लगातार धारण कर सकते हैं आकार / प्रकार निर्दिष्ट करने के लिए एक आवश्यकता है, तो आप इसे और अधिक विशेष रूप से का उपयोग कर स्टोर कर सकते हैं
UInt
,Int8
,Int16
आदि जो हम नीचे पता लगाने के लिए जा रहे हैं।
उदाहरण 2: पूर्णांक डेटा प्रकार
var highScore:Int = 100 print(highScore) highScore = -100 print(highScore)
जब आप प्रोग्राम चलाते हैं, तो आउटपुट होगा:
100 -100
उपरोक्त उदाहरण में हमने टाइप का एक वैरिएबल हाईकोर घोषित किया Int
। सबसे पहले, हमने इसे 100 के मान के साथ असाइन किया है ताकि print(highScore)
स्क्रीन में 100 आउटपुट हो।
बाद में, हमने असाइनमेंट ऑपरेटर का उपयोग करके मूल्य -100 को बदल दिया highScore = -100
, ताकि print(highScore)
स्क्रीन में आउटपुट -100 हो।
आइए Int
स्विफ्ट में कुछ प्रकारों का पता लगाएं ।
इंट 8
- इंटेगर प्रकार का वेरिएंट जो सकारात्मक और नकारात्मक दोनों छोटी संख्याओं को संग्रहीत कर सकता है।
- डिफ़ॉल्ट मान : 0
- आकार : 8 बिट
- रेंज : -128 से 127
एक Int8
पूर्णांक इसमें कुल 2 8 = (256) मान संग्रहीत कर सकता है। यानी यह 0 से 255 सही तक संख्याओं को स्टोर कर सकता है?
Yes, you are correct. But since, Int8
includes both positive and negative numbers we can store numbers from -128 to 127 including 0 which totals to 256 values or numbers.
var highScore:Int8 = -128//ok highScore = 127 //ok highScore = 128 // error here highScore = -129 //error here
You can also find out the highest and lowest value a type can store using .min
and .max
built in Swift functions.
Example 3: Max and Min Int8 data type
print(Int8.min) print(Int8.max)
When you run the program, the output will be:
-128 127
UInt
- Variant of Integer type called UInt (Unsigned Integer) which can only store unsigned numbers (positive or zero).
- Default Value: 0
- Size: 32/64 bit depends on the platform type.
- Range: 0 to 4294967295 (32 bit platform)
0 to 18446744073709551615 (64 bit platform)
Example 4: UInt data type
var highScore:UInt = 100 highScore = -100//compile time error when trying to
The above code will give you a compile time error because a Unsigned Integer can only store either 0 or a positive value. Trying to store a negative value in an Unsigned Integer will give you an error.
Float
- Variables or Constants declared of float type can store number with decimal or fraction points.
- Default Value: 0.0
- Size: 32 bit floating point number.
- Range: 1.2*10-38 to 3.4 * 1038 (~6 digits)
Example 5: Float data type
let highScore:Float = 100.232 print(highScore)
When you run the program, the output will be:
100.232
Double
- Variables / Constants declared of Double type also stores number with decimal or fraction points as Float but larger decimal points than Float supports.
- Default value : 0.0
- Size: 64-bit floating point number. (Therefore, a variable of type Double can store number with decimal or fraction points larger than Float supports)
- Range: 2.3*10-308 to 1.7*10308 (~15 digits)
Example 6: Double data type
let highScore:Double = 100.232321212121 print(highScore)
When you run the program, the output will be:
100.232321212121
Character
- Variables/Constants declared of Character type can store a single-character string literal.
- You can include emoji or languages other than english as an character in Swift using escape sequence u(n) (unicode code point ,n is in hexadecimal).
Example 7: Character data type
let playerName:Character = "J" let playerNameWithUnicode:Character = "u(134)" print(playerName) print(playerNameWithUnicode)
When you run the program, the output will be:
J Ĵ
String
- Variables or Constants declared of String type can store collection of characters.
- Default Value: "" (Empty String)
- It is Value type. See Swift value and Reference Type .
- You can use for-in loop to iterate over a string. See Swift for-in loop.
- Swift also supports a few special escape sequences to use them in string. For example,