Ποιοι είναι οι τύποι δεδομένων στο Swift;
sobes.tech AI
Απάντηση από AI
Στη Swift, οι βασικοί τύποι δεδομένων περιλαμβάνουν:
-
Ακέραιοι τύποι:
Int,UInt,Int8,UInt8,Int16,UInt16,Int32,UInt32,Int64,UInt64. ΤαIntκαιUIntέχουν μέγεθος που εξαρτάται από την τρέχουσα πλατφόρμα (συνήθως 32 ή 64 bits). -
Τύποι κινητής υποδιαστολής:
Float(αντιπροσωπεύει έναν 32-bit αριθμό κινητής υποδιαστολής),Double(αντιπροσωπεύει έναν 64-bit αριθμό κινητής υποδιαστολής, η προτιμώμενη επιλογή στις περισσότερες περιπτώσεις). -
Τύπος boolean:
Bool. Μπορεί να πάρει τις τιμέςtrueήfalse. -
Τύπος συμβολοσειράς:
String. Περιέχει μια ακολουθία χαρακτήρων. -
Τύπος χαρακτήρα:
Character. Αντιπροσωπεύει ένα μεμονωμένο χαρακτήρα Unicode. -
Συλλογές:
- Πίνακες (
Array): Ταξινομημένη συλλογή στοιχείων του ίδιου τύπου. - Σύνολα (
Set): Μη ταξινομημένη συλλογή μοναδικών στοιχείων του ίδιου τύπου. - Λεξικά (
Dictionary): Μη ταξινομημένη συλλογή ζευγών κλειδιού-τιμής, όπου τα κλειδιά είναι μοναδικά και έχουν έναν τύπο, και οι τιμές έχουν έναν άλλο τύπο.
- Πίνακες (
-
Επιλογικοί τύποι (
Optional): Αντιπροσωπεύουν είτε μια τιμή ενός συγκεκριμένου τύπου είτε την απουσία τιμής (nil). Επισημαίνονται με την προσθήκη?ή!στον τύπο. -
Τυπλά (
Tuple): Επιτρέπουν την ομαδοποίηση πολλαπλών τιμών σε έναν ενιαίο σύνθετο τύπο. Οι τύποι των τιμών στο tuple μπορεί να διαφέρουν. -
Enums: Επιτρέπουν τον ορισμό μιας ομάδας σχετικών τιμών.
-
Δομές (
Struct): Τύποι τιμών. Κατάλληλοι για μοντελοποίηση δεδομένων. -
Κλάσεις (
Class): Τύποι αναφοράς. Κατάλληλοι για μοντελοποίηση πολύπλοκων αντικειμένων και ιεραρχιών.
Παραδείγματα:
// Int
let age: Int = 30
// Double
let price: Double = 19.99
// Bool
let isAvailable: Bool = true
// String
let name: String = "Alice"
// Array
let numbers: [Int] = [1, 2, 3]
// Dictionary
let person: [String: Any] = ["name": "Bob", "age": 25]
// Optional Int
var optionalInt: Int? = nil
// Tuple
let coordinates = (x: 10, y: 20)
// Enum
enum Status {
case active
case inactive
}
let currentStatus: Status = .active
// Struct
struct Point {
var x: Int
var y: Int
}
let myPoint = Point(x: 5, y: 10)
// Class
class Person {
var name: String
init(name: String) {
self.name = name
}
}
let newPerson = Person(name: "Charlie")